Settings元素
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>