除了通过class属性指定Mapper接口外,Mybatis还为我们提供了一个可以同时指定多个Mapper接口的方法。在现在的Mybatis版本中我们可以在mappers元素下面定义一个package子元素,用以指定Mapper接口所在的包,这样Mybatis就会把这个包下面的所有Mapper接口都进行注册。
这里的一个package只针对于一个包。当在多个包里面定义有Mapper接口时,我们需要定义对应的多个package元素。
这四种注册Mapper的方式就是我想在这篇文章中表达的。总结一下:
- <mappers>
- <!-- 通过package元素将会把指定包下面的所有Mapper接口进行注册 -->
- <package name="com.tiantian.mybatis.mapperinterface"/>
- <!-- 通过mapper元素的resource属性可以指定一个相对于类路径的Mapper.xml文件 -->
- <mapper resource="com/tiantian/mybatis/mapper/UserMapper.xml"/>
- <!-- 通过mapper元素的url属性可以指定一个通过URL请求道的Mapper.xml文件 -->
- <mapper url="file:///E:/UserMapper.xml"/>
- <!-- 通过mapper元素的class属性可以指定一个Mapper接口进行注册 -->
- <mapper class="com.tiantian.mybatis.mapperinterface.UserMapper"/>
- </mappers>