先来官网Mybatis官网
mappers的作用
注册绑定我们的Mapper文件
不使用的异常
如果我们不使用mapper注册绑定我们的Mapper文件,就会报异常
我们展示一下,注视掉绑定Mapper文件
运行单元测试报的异常
注册绑定方式
官网给出了4种方式,我们下面举例说明,并且说明注意的细节
方式1:<mapper resource=""/>(推荐)
使用相对于类路径的资源引用
为什么说相对于类路径的资源引用
我们编译一下
测试一下,成功
方式2:<mapper url="file:///"/>
使用完全限定资源定位符(URL),file:///固定这样写
我们把DetpMapper.xml文件放到任意位置,现在我放到桌面
项目删掉了DeptMapper.xml文件,直接使用放在桌面的DeptMapper.xml文件,桌面的DeptMapper.xml文件的路径为
测试一下,成功
方式3:<mapper class=""/>
使用映射器接口实现类的完全限定类名
什么叫完全限定类名,也就是
- 接口要与xml文件同名
- 接口要与xml在同一个包下
我们先举一个正确的例子
这样也可以,因为编译后java和resources的目录下的资源都会放到项目的类路径下
错误1:不同名
错误2:不同包路径
方式4:<mapper class=""/>
将包内的映射器接口实现全部注册为映射器
方式4和方式3的要求偶一样
- 接口要与xml文件同名
- 接口要与xml在同一个包下
至于错误的示范,参照第三种方式就可以了