mappers:映射器 : 定义映射SQL语句文件

mappers:映射器 : 定义映射SQL语句文件


错误:Type interface com.hut.mapper.UserMapper is not known to the MapperRegistry.


引入资源方式
MapperRegistry:注册绑定我们的Mapper文件;
方式一:推荐使用

<!-- 使用相对于类路径的资源引用 -->
<mappers>
 <mapper resource="com/hut/mapper/UserMapper.xml"/>
</mappers>

方式二:使用class文件绑定注册

<!-- 使用完全限定资源定位符(URL) -->
<mappers>
 <mapper url="file:///var/mappers/AuthorMapper.xml"/>
</mappers>

注意点:

  • 接口和他的Mapper配置文件必须同名
  • 接口和他的Mapper配置文件必须在同一个包下

方式三:使用扫描包进行注入

<!--
使用映射器接口实现类的完全限定类名
需要配置文件名称和接口名称一致,并且位于同一目录下
-->
<mappers>
 <mapper class="org.mybatis.builder.AuthorMapper"/>
</mappers>
<!--
将包内的映射器接口实现全部注册为映射器
但是需要配置文件名称和接口名称一致,并且位于同一目录下
-->
<mappers>
 <package name="org.mybatis.builder"/>
</mappers>

Mapper文件

<?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">
<mapper namespace="com.hut.mapper.UserMapper">
</mapper>
  • namespace中文意思:命名空间,作用如下:

    • namespace的命名必须跟某个接口同名
    • 接口中的方法与映射文件中sql语句id应该一一对应
    1. namespace和子元素的id联合保证唯一 , 区别不同的mapper
    2. 绑定DAO接口
    3. namespace命名规则 : 包名+类名
上一篇:MyBatis探究-----核心配置文件mybatis-config.xml中配置mappers的几种方式


下一篇:Mybatis学习笔记 - 01