1、properties:用来引入外部properties配置文件的内容
resource:引入类路径下的资源
url:引入网络路径或磁盘路径下的资源
<properties resource="">properties>
2、settings:包含很多重要的的设置项
setting用来设置每一个设置项
name:设置项名,value:设置项值
<settings>
<setting name="cacheEnabled" value="true"/>
<setting name="lazyLoadingEnabled" value="true" />
<setting name="aggressiveLazyLoading" value="false" />
settings>
3、typeAliases:别名处理器,可以为java类型起别名,别名不区分大小写
typeAlias:为某个java类型起别名
type:指定要起别名的类型的全类名,默认是类名小写
alias:指定新的别名
package为某个包下的所有类批量其别名
name:指定包名(为当前包以及下面所有的后代包的每一个类都起一个默认别名)
批量起别名的情况下 可以使用@Alias注解为某个类型指定新的别名(防止子包中有相同类名时,默认别名发生冲突)
<typeAliases>
<typeAlias type="entity.Employee" alias="Employee" />
<package name=""/>
typeAliases>
4、environments:可以配置多种环境,default指定使用某种环境
environment:配置一个环境信息,必须有两个标签,id代表当前环境的唯一标识
transactionManager:事务管理器,type指定事务管理器的类型JDBC|MANAGED
dataSource:数据源,type指定数据源类型UNPOOLED|POOLED|JNDI
<environments default="development">
<environment id="development">
<transactionManager type="JDBC" />
<dataSource type="POOLED">
<property name="driver" value="com.mysql.jdbc.Driver" />
<property name="url"
value="jdbc:mysql://localhost:3306/test?serverTimezone=UTC&characterEncoding=utf8" />
<property name="username" value="root" />
<property name="password" value="" />
dataSource>
environment>
environments>
5、databaseIdProvider:用来支持多数据库厂商
type=“DB_VENDOR”用来得到数据库厂商的标识
property为不同的数据库厂商起别名
<databaseIdProvider type="DB_VENDOR">
<property name="MySQL" value="mysql"/>
<property name="Oracle" value="oracle"/>
<property name="SQL Server" value="sqlserver"/>
databaseIdProvider>
6、mappers:将sql映射注册到全局配置中
mapper:注册一个sql映射
注册配置文件
resource:引用类路径下的sql映射文件
url:引用网络路径或者磁盘路径下的sql映射文件
注册接口
class:引用(注册)接口
1、有sql映射文件,映射文件名必须和接口名相同,并且放在与接口同一目录下
2、没有sql映射文件,所有的sql都是利用注解写在接口上
package用来批量注册
<mappers>
<mapper resource="entity/EmployeeMapper.xml"/>
mappers>