Mybatis原始Dao开发方法(一)

Mybatis与Spring三种开发方式

  1. 传统的dao开发方式
  2. Mapper动态代理形式开发dao
  3. Mapper动态代理扫描包形式开发dao(增强第二种方式)

原始Dao

原始dao开发思路比较简单,写个dao接口和dao实现类即可。需要向dao实现类中注入sqlSessionFactory,在方法体内通过sqlSessionFactory创建sqlSession。

  1. 创建UserDao接口Mybatis原始Dao开发方法(一)

  2. 创建关于UserDao接口的实现类
    Mybatis原始Dao开发方法(一)

  3. JUnit测试
    Mybatis原始Dao开发方法(一)

原始Dao方法存在的弊端

  1. Dao方法体存在重复代码:通过SqlSessionFactory创建SqlSession,调用SqlSession的数据库操作方法。
  2. 调用sqlSession的数据库操作方法需要指定statement的id(例如:“test.findUserById”),这里存在硬编码,不得于开发维护。
  3. sqlSession的方法中,要求传入的参数是Object类型的(泛型),也就是说如果我传错了参数,编译不会报错,执行的时候才会报错,不利于开发。