MyBatis insert和select例子

1.首先下载MyBatis支持包 mybatis-3.2.1.jar
这里写图片描述
2.编写代码

(1)MyBatis配置文件

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE configuration PUBLIC "-//mybatis.org//DTD Config 3.0//EN" "http://mybatis.org/dtd/mybatis-3-config.dtd">
<!-- MyBatis配置信息 -->
<configuration>
    <!-- 配置数据库连接环境 -->
    <environments default="developement">
        <environment id="developement">
            <!-- 事务管理 -->
            <transactionManager type="JDBC"/>
            <!-- 配置数据库连接信息 -->
            <dataSource type="POOLED">
                <!-- jdbc驱动 -->
                <property name="driver" value="com.microsoft.sqlserver.jdbc.SQLServerDriver"/>
                <!-- url -->
                <property name="url" value="jdbc:sqlserver://localhost:1433;database=db"/>
                <!-- 用户名 -->
                <property name="username" value="sa"/>
                <!-- 密码 -->
                <property name="password" value="123456"/>
            </dataSource>
        </environment>
    </environments>

    <!-- 映射 -->
    <mappers>
        <mapper resource="bean/UserMapper.xml"/>
    </mappers>
</configuration>

(2)User实体类

package bean;
/**
 * User 实体类
 * @author Administrator
 *
 */
public class User {

    private int id;
    private String name;
    private String sex;
    private int age;

    //set  get
    ......省略setget
}

(3)User的映射文件

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<!-- 指定唯一的namespace:包名+sql映射文件名(不用带xml后缀) -->
<mapper namespace="bean.UserMapper">
    <!-- 
    在select标签体内编写sql语句
    id属性:是唯一的不能重复
    parameterType属性:指明查询时使用的参数类型(可以起到一个限定类型的作用)
    resultType属性:表示将查询结果返回结果封装成指定的对象
     -->
    <select id="getUser" parameterType="java.lang.String" resultType="bean.User">
        <!-- 这里写sql语句 -->
        select * from tb_user where id=#{id}
    </select>

    <!-- 插入语句 -->
    <insert id="setUser" parameterType="bean.User">
        insert into tb_user(name,sex,age) values(#{name},#{sex},#{age})
    </insert>

</mapper>

(4)Test测试类
import java.io.IOException;
import java.io.InputStream;

import org.apache.ibatis.io.Resources;
import org.apache.ibatis.session.SqlSession;
import org.apache.ibatis.session.SqlSessionFactory;
import org.apache.ibatis.session.SqlSessionFactoryBuilder;

import bean.User;

/**
 * 测试类
 * @author Administrator
 *
 */
public class Test {

    public static void main(String[] args) {
        try {
            //MyBatis
            String resource = "conf.xml";
            //输入流
            InputStream is;
            is = Resources.getResourceAsStream(resource);
            //获取sqlSessionFactory
            SqlSessionFactory ssf = new SqlSessionFactoryBuilder().build(is);
            //获取sqlSession
            SqlSession session = ssf.openSession();

            //映射文件namespace + id sql标识
            String statement = "bean.UserMapper.getUser";
            //执行查询返回一个唯一user对象的sql  1是参数
            User user = session.selectOne(statement,1);
            System.out.println(user.getName());

            //insert插入一条数据
            //实例化一个User对象
            User user1 = new User();
            user1.setName("老王");
            user1.setSex("男");
            user1.setAge(18);
            try {
                session.insert("bean.UserMapper.setUser",user1);
                session.commit();//提交事务
                System.out.println("保存成功!!!");
            } catch (Exception e) {
                e.printStackTrace();
                session.rollback();//事务回滚
            }


        } catch (IOException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }
    }
}

运行后效果
这里写图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值