1 Configuration Structure
- properties
- settings
- typeAliases
- typeHandlers
- objectFactory
- plugins
-
environments
- environment
- transactionManager
- dataSource
- environment
- databaseIdProvider
- mappers
2 Mappers
配置完 Configuration Structure 列举的元素(其他元素配置请点击对应元素前往对应文章查看)后,我们就可以去定义映射 SQL 语句。
But first, we need to tell MyBatis where to find them. Java doesn’t really provide any good means of auto-discovery in this regard, so the best way to do it is to simply tell MyBatis where to find the mapping files.
作用:但是首先,我们需要告诉 MyBatis 去哪里能找到它们。Java 并不真正提供任何自动查找的好方法,所以最好的办法就是告诉 Mybatis 去哪里可以找到映射文件。
You can use classpath relative resource references, fully qualified url references (including [file:///](file:///) URLs), class names or package names.
你可以使用相对于类路径的资源引用、完全限定 url 引用(包括 [file:///](file:///) URL)、类名或包名。
<!-- 使用相对于类路径的资源引用 -->
<mappers>
<mapper resource="org/mybatis/builder/AuthorMapper.xml"/>
<mapper resource="org/mybatis/builder/BlogMapper.xml"/>
<mapper resource="org/mybatis/builder/PostMapper.xml"/>
</mappers>
<!-- 完全限定 url 路径 -->
<mappers>
<mapper url="file:///var/mappers/AuthorMapper.xml"/>
<mapper url="file:///var/mappers/BlogMapper.xml"/>
<mapper url="file:///var/mappers/PostMapper.xml"/>
</mappers>
<!-- 使用 Mapper 接口类的完全限定名 -->
<mappers>
<mapper class="org.mybatis.builder.AuthorMapper"/>
<mapper class="org.mybatis.builder.BlogMapper"/>
<mapper class="org.mybatis.builder.PostMapper"/>
</mappers>
<!-- 将包中的所有类注册成为映射器 -->
<mappers>
<package name="org.mybatis.builder"/>
</mappers>
注意:使用<package>加入多个的方式,xml 映射文件必须在配置的包下,否则会抛出找不到的异常。
最后
说明:MyBatis 官网提供了简体中文的翻译,但个人觉得较为生硬,甚至有些地方逻辑不通,于是自己一个个重新敲着翻译的(都不知道哪里来的自信...),有些地方同官网翻译有出入,有些倔强地保留了自己的,有的实在别扭则保留了官网的,这些都会在实践中一一更正。鉴于个人英文能力有限,文章中保留了官方文档原英文介绍(个别地方加以调整修剪),希望有缘看到这里的朋友们能够有自己的理解,不会被我可能错误或不合理的翻译带跑偏(〃'▽'〃),欢迎指正!
当前版本:mybatis-3.5.0
官网文档:MyBatis
官网翻译:MyBatis 简体中文
项目实践:MyBatis Learn