一 mybatis.xml 标签
在 mybatis 的全局配置文件 mybatis.xml 中一般有下列几个标签:
- properties(属性)
- settings(全局参数配置)
- typeAliases(类型别名)
- typeHandlers(类型处理器)
- objectFactory(对象工厂)
- plugins(插件)
- environments(环境集合属性对象)
- environment(环境子属性对象)
- transactionManager(事务管理)
- dataSource(数据源)
- mappers(映射)
二 标签介绍
** 1 properties **
properties
标签中一般配置数据库相关属性,但为了方便对dataSource
进行管理,我们一般会将这些信息放在 properties.properties
文件中。
2 settings
全局配置参数,比如开启二级缓存。
3 typeAliases(别名)
一般我们在给定指定类型时,我们一般是将类型的全路径给上,比如:
<!--2mapperProxy.Student 为类的全路径-->
<update id="updateStu" parameterType="_2mapperProxy.Student">
UPDATE students SET name = #{name} and sal=#{sal] WHERE id=#{id}
</update>
这种方式来配置不利于管理,所以我们一般对 parameterType
或resultType
指定的类型进行别名定义。
- 单个别名定义
<typeAliases>
<!--
对单个别名定义
type:类型的路径
alias:别名名称
-->
<typeAlias type="_2mapperProxy.Student" alias="student"/>
</typeAliases>
- 批量别名定义
<typeAliases>
<!--
批量别名定义
mybatis 会自动扫描指定包下的 po 类,自定义别名,别名为类名(首字母大/小写)
-->
<package name="_2mapperProxy"/>
</typeAliases>
4 typeHandlers
mybatis
通过 typeHandlers
完成jdbc
类型和java
类型的转换。
5 mapper
- 使用 resource:使用相对路径的资源
- 使用 url:完全限定路径(绝对路径)
- 使用 class:使用 mapper 接口类路径(此方法必须mapper接口名称和mapper映射文件名一致,且放在同一包下),在这种方式下,还可以使用批量加载 mapper(package)
<mappers>
<mapper resource="_1fastDemo/studentMapper.xml"/>
<mapper url="D://mapper.xml"/>
<mapper class="_1fastDemo/studentMapper"/>
<!--
批量加载指定包下的所有mapper
-->
<package name="_2mapperProxy"/>
</mappers>