配置文件常用的标签及其属性
<settings ></settings>
配置mybatis运行时的一些行为信息
<settings>
<setting name="lazyLoadingEnabled" value="true"/>
<setting name="aggressiveLazyLoading" value="true"/>
</settings>
<properties></properties>
常用于导入外部信息,一些可替换的属性信息,比如数据库信息(URL,DRIVER,USERNAME,PASSWORD)
导入外部文件后,mybatis配置文件就可以使用${key}的方式动态的导入
<properties resource="db.properites"></properties>
<typeAliases></typeAliases>
给类全名取一个简短的别名,如果类型名字过长,使用过多,可以取别名。后续的sql映射文件的需要指定类型的地方就可以使用简短的别名了
<typeAliases>
<typeAlias type="com.zwei.domain.User" alias="user" ></typeAlias>
</typeAliases>
<environments></environments>
属性default指定默认的数据库环境信息
子元素:environment配置一个数据库环境
子元素:transactionManager 属性type指定事务的管理方式:
JDBC:以JDBC的方式管理事务;
MANAGED:什么也不做,常搭配别的框架如spring一起使用,可以配置spring框架的事务管理机制
子元素:dataSource 属性type 指定创建数据源的方式:
POOLED: 以连接池的方式创建数据源,底层会自动的创建一定连接数量的连接池,默认为 10 个
UNPOOLED:非连接池的方式创建连接,底层每一次连接后都会销毁,需要时再重建
JNDI :容器可以集中或在外部配置数据源,然后放置一个 JNDI 上下文的数据源引用
dataSource 下需要配置数据库信息,driver ,url,username,password
还可以配置事务隔离级别:defaultTransactionIsoilationLevel
Serializable : 避免所有读取问题,性能最慢
Repeatable-Read : 可以避免脏读,不可以重复读
Read-Commited :可以避免脏读
Read-UnCommitted :都无法避免
如果是以连接池的方式创建的数据源,还可以配置最大的连接数量:poolMaximumActiveConnections
默认连接数为 10 个
其他更多详细参数参照mybatis文档
https://mybatis.org/mybatis-3/zh/configuration.html#environments
mappers标签下,导入外部SQL映射文件