Mybatis 学习笔记之 配置文件(四)

Mybatis   配置文件大多数名为:SqlMapConfig.xml 。当然你也可以任意文件名。

一、properties属性

将数据库连接参数单独配置在 db.properties 中,只需要在 SqlMapConfig.xml 中加载 db.properties 的属性值,在 SqlMapConfig.xml 中就不需要对数据库连接参数硬编码。

将数据库连接参数只配置在 db.properties 中,好处:

  • 方便对参数进行统一管理。
  • 其它 xml 文件也可以引用该 db.properties。


在 sqlMapConfig.xml 加载属性文件:



properties特性:
 MyBatis 将按照下面的顺序来加载属性:
  • 在 properties 元素体内定义的属性首先被读取。 
  • 然后会读取 properties 元素中 resource 或 url 加载的属性,它会覆盖已读取的同名属性。 
  • 最后读取 parameterType 传递的属性,它会覆盖已读取的同名属性。


二、typeAliases 自定义别名

定义别名 在输入输出映射中 就可以不用写很长的路径名了。

2.1 单个别名定义
<typeAliases>
<!-- type:类型的路径
alias:别名-->
<typeAlias  type="com.po.User" alias="user"/>
</typeAliases>
2.2 批量别名定义(常用)
<typeAliases>
<!-- mybatis 自动扫描包中的实体类(po类),自动定义别名,别名就是类名(首字母大小写都可以) -->
<package  name="com.po" />
</typeAliases>


三、mapper.xml 映射加载

3.1 单个文件加载 ( resource )
<mappers>
    <mapper resource="sqlmap/UserMapper.xml" />
</mappers>
3.2 单个文件加载 ( class )

通过 mapper 接口加载映射文件。

规范:需要保持 mapper 接口名 和 mapper.xml 映射文件名一致,且在同一个目录下。

规范前提:使用的时 mapper 代理方法。

<mappers>
   <mapper class="sqlmap.UserMapper" />
</mappers>
3.3 批量文件加载 ( package )推荐

指定 mapper 映射文件的包名,mybatis 自动扫描包下面的 mapper 接口 和 映射文件。

规范:需要保持 mapper 接口名 和 mapper.xml 映射文件名一致,且在同一个目录下。跟大小写没有关系。

规范前提:使用的时 mapper 代理方法。

<mappers>
    <package name="sqlmap"/>
</mappers>


四、小结:

  1. 针对 properties 给出的建议:(1)不要在 properties 元素体内添加任何属性值,只将属性值定义在 properties 文件中;(2)在 properties 文件中定义属性名要有一定的特殊性,如:XXXXX.XXXXX.XXXX。
  2. 针对别名,建议使用 package 批量扫描处理。
  3. 针对映射文件的加载,建议使用 package 批量扫描加载。



猜你喜欢

转载自blog.csdn.net/qq_30715329/article/details/79949557
今日推荐