MyBatis:mapper接口扫描配置方式

普通开发方式

  1. Mybatis 核心配置文件引入映射文件:<mapper resource = "mapper/User.xml" />,映射xml文件名没有要求,文件内的名称空间名没有要求。
  2. java 代码引用映射文件,使用:名称空间.sql语句id名称
    例:List userList = session.selectList(“test.findAllUser”);

备注:此方式几乎不会使用

接口代理开发

方式一:引入javabean映射文件

Mybatis 核心配置文件引入 javabean 映射文件:<mapper class="xxx/实体类名.xml"/>
例:<mapper resource = "mapper/User.xml" />mapper 是资源文件目录,编译后在 bin 目录下。

  1. 接口映射文件 namespace 名称必须是接口全类路径名,
    例:<mapper namespace="com.mybatis.dao.IUserDao">
  2. 接口映射文件sql语句的ID必须和接口的方法名一致。
  3. 接口映射文件接受参数类型必须和接口传递参数类型一致。
  4. 接口映射文件返回值类型必须和接口返回值类型一致。

备注:此方法不常使用,也不建议使用。

方式二:扫描单接口

Mybatis 核心配置文件配置扫描接口的全路径:<mapper class="interface全类路径名"/>
例:<mapper class="com.mybatis.dao.IUserDao"/>

  1. 接口映射文件 namespace 名称必须是接口全类路径名
    例:<mapper namespace="com.mybatis.dao.IUserDao">
  2. 接口映射文件sql语句的ID必须和接口的方法名一致。
  3. 接口映射文件接受参数类型必须和接口传递参数类型一致。
  4. 接口映射文件返回值类型必须和接口返回值类型一致。
  5. 接口映射文件和接口必须在同一个目录,且名称相同。

备注:此方式不建议使用,太繁琐,当有很多接口时需写很多配置项。

方式三:批量扫描接口

Mybatis 核心配置文件配置扫描接口的包全路径:<package name="接口包路径名" />
例:<package name="com.mybatis.dao" />

  1. 接口映射文件 namespace 名称必须是接口全类路径名
    例:<mapper namespace="com.mybatis.dao.IUserDao">
  2. 接口映射文件 sql 语句的 ID 必须和接口的方法名一致。
  3. 接口映射文件接受参数类型必须和接口传递参数类型一致。
  4. 接口映射文件返回值类型必须和接口返回值类型一致。
  5. 接口映射文件和接口必须在同一个目录,且名称相同。

备注:此方式在实际开发中使用最多

作者

光星

发布于

2018-03-06

更新于

2022-06-17

许可协议

评论