上一篇博文中我成功配置好了Mybatis的环境,那么接下来就是开始使用Mybatis来操纵数据库,我的需求是操作数据库中的user表,操作的内容包括增、删、改、查。

  第一步:根据user表创建po类User.java,文件的内容如下

  package test;

  public class User {

    private int id;

    private string name;

    private string password;

    public int getId() {

       return this.id;

    }

    public void setId(int _id) {

       this.id = _id;

    }

    public string getName() {

       return this.name;

    }

    public void setName(string _name) {

       this.name = _name;

    }

    public string getPassword() {

       return password;

    }

    public void setPassword(string _password) {

       this.password = _password;

    }

  }

  注意:po类中的属性名称需要和数据表中字段的名称完全相同。


  第二步:创建mapper映射文件UserMapper.xml,其中部分内容如下:

  <select id="selectById" parameterType="int" returnType="test.User">

    select * from user where id=#{id}

  </select>

  这里的id将和下面要写的mapper接口中定义的方法的名称相同,parameterType叫做输入参数类型,returenType叫做输出结果类型,#{}是占位符,#{id}中的id就是输入参数,这个select节点会被mybatis封装为一个statement对象。

 

  第三步:创建mapper接口文件UserMapper.java,部分代码如下:

    public User selectById(int id);

  这里的id就是要传递到上面映射文件中#{id}中的对象。

  

  第四步:在mybatis-config.xml中的mappers节点下配置映射文件,配置映射文件方式我在上一篇博文中有讲过,有不清楚的话可以查看上一篇博文。

  

  第五步:开始测试

    创建一个测试类,然后定义个测试方法,方法的内容如下:

    InputStream inputStream = Resources.getResourceAsStream("config/mybatis/mybatis-config.xml");//mybatis配置文件的相对路径

     SqlSessionFactory sqlSessionFactory = new SqlSessionFactoryBuilder().build(inputStream); //通过SqlSessionFactoryBuilder得到会话工厂对象

    SqlSession sqlSession = sqlSessionFactory.openSession();//通过会话工厂对象得到会话对象

    UserMapper userMapper = sqlSession.getMapper(UserMapper.class);//获取mapper接口对象这里的mapper对象是mybatis根据mapper映射文件来创建的

    User user = userMapper.selectById(1);//查询id为1的用户

    sqlSeesion.close();//关闭会话


  删、改、增的方式和查是相似的都可以通过定义<update>、<delete>、<insert>节点来完成,定义的方式和<select>相似。