0 环境
- 系统环境:win10
- 数据库:mysql
- IDE: IDEA
1 mybatis全局配置文件引入
- 方式1:使用mapper resouce属性注册mapper xml文件
<mappers>
<mapper resource="Mapper xml的路径(相对于classes的路径)"/>
</mappers>
注意
直接引用的xml,Mapper xml中namespace同名的Mapper接口(接口存在)
- 方式2:使用mapper class属性注册Mapper接口
<mappers>
<mapper class="接口的完整类名" />
</mappers>
mybais去加载class对应的接口,然后还会去加载该接口
同目录下的同名xml文件
编译之后的文件中少了UserMapper.xml,还需要在pom.xml中project下添加如下配置:
<build>
<resources>
<resource>
<directory>${project.basedir}/src/main/java</directory>
<includes>
<include>**/*.xml</include>
</includes>
</resource>
<resource>
<directory>${project.basedir}/src/main/resources</directory>
<includes>
<include>**/*</include>
</includes>
</resource>
</resources>
</build>
- 方式3:使用package元素批量注册Mapper接口
批量注册Mapper接口(类似别名包扫描)
<mappers>
<package name="需要扫描的包" />
</mappers>
mybatis会扫描package元素中name属性指定的包及子包中的所有接口 做为Mapper接口进行注册
放一起有点难受 可以接口(放在java目录下) xml(放在resources)分离
2 springboot中配置
1.启动类
//在xxxApplication启动类中添加包扫描
@MapperScan(basePackages = "xxx")
2.在pom.xml中添加如下配置
<build>
<resources>
<resource>
<directory>src/main/resources</directory>
</resource>
<resource>
<directory>src/main/java</directory>
<includes>
<include>**/*.xml</include>
</includes>
</resource>
</resources>
</build>