Setting 元素下是些非常重要的设置选项,用于设置和改变MyBatis 运行中的行为。下面的
表格列出了Setting 元素支持的属性、默认值及其功能。
设置选项描述可用值默认值
cacheEnabled 全局性地启用或禁用所有在mapper 配
置文件中配置的缓存。
true |
false
true
lazyLoadingEnabled 全局性地启用或禁用延迟加载。当禁用
时,所有关联的配置都会立即加载。
true |
false
true
aggressiveLazyLoading 当启用后,一个有延迟加载属性的对象
的任何一个延迟属性被加载时,该对象
的所有的属性都会被加载。否则,所有
属性都是按需加载。
true |
false
true
multipleResultSetsEnabled 允许或禁止从单一的语句返回多个结果
集(需要驱动程序兼容)。
true |
false
true
useColumnLabel 使用列的标签而不是列的名称。在这方
面,不同的驱动程序可能有不同的实
现。参考驱动程序的文档或者进行测试
来确定您所使用的驱动程的行为
true |
false
true
useGeneratedKeys 允许JDBC 自动生成主键。需要驱动程
序兼容。如果设置为true 则会强行自
动生成主键,然而有些则不会自动生成
主键(驱动程序不兼容),但依旧会工
作(如Derby)。
true |
false
False
autoMappingBehavior 指定MyBatis 是否以及如何自动将列映
射到字段/属性。
PARTIAL: 只是自动映射简单、非嵌套
的结果集。
FULL: 将会自动映射任何复杂的(嵌套
或非嵌套)的结果集。
NONE,
PARTIAL,
FULL
PARTIAL
defaultExecutorType 配置默认的执行器(executor)。
SIMPLE :简单的执行器。
REUSE :重用prepared statements 的
执行器。
BATCH:重用statements 并且进行批量
更新的执行器。
SIMPLE
REUSE
BATCH
SIMPLE
defaultStatementTimeout 设置查询数据库超时时间。任何正整数Not Set
(null)
一个Settings 元素完整的配置例子如下:
一个Settings 元素完整的配置例子如下:
<settings> <setting name="cacheEnabled" value="true"/> <setting name="lazyLoadingEnabled" value="true"/> <setting name="multipleResultSetsEnabled" value="true"/> <setting name="useColumnLabel" value="true"/> <setting name="useGeneratedKeys" value="false"/> <setting name="enhancementEnabled" value="false"/> <setting name="defaultExecutorType" value="SIMPLE"/> <setting name="defaultStatementTimeout" value="25000"/> </settings>