一起學習Mybatis----配置 Settings
阿新 • • 發佈:2018-12-27
mybatis的Settings的配置是最為複雜的。
如:
<settings> <setting name="cacheEnabled" value="true" /> <setting name="lazyLoadingEnabled" value="true" /> <setting name="aggressiveLazyLoading" value="false" /> <setting name="multipleResultSetsEnabled" value="true" /> <setting name="useColumnLabel" value="true" /> <setting name="useGeneratedKeys" value="true" /> <setting name="defaultStatementTimeout" value="25000" /> <setting name="logPrefix" value="dao."/> <setting name="defaultScriptingLanguage" value="ToutiaoLanguageDriver"/> </settings>
Settings配置內容介紹:
設定引數 | 描述 | 有效值 | 預設值 |
cacheEnabled | 全域性地開啟或關閉配置檔案中的所有對映器已經配置的任何快取。 | true | false | true |
lazyLoadingEnabled | 延遲載入的全域性開關。當開啟時,所有關聯物件都會延遲載入。 特定關聯關係中可通過設定fetchType屬性來覆蓋該項的開關狀態。 | true | false | false |
useColumnLabel | 使用列標籤代替列名。不同的驅動在這方面會有不同的表現, 具體可參考相關驅動文件或通過測試這兩種不同的模式來觀察所用驅動的結果。 | true | false | true |
useGeneratedKeys | 允許 JDBC 支援自動生成主鍵,需要驅動相容。 如果設定為 true 則這個設定強制使用自動生成主鍵,儘管一些驅動不能相容但仍可正常工作(比如 Derby)。 | true | false | False |
defaultExecutorType | 配置預設的執行器。SIMPLE 就是普通的執行器;REUSE 執行器會重用預處理語句(prepared statements); BATCH 執行器將重用語句並執行批量更新。 | SIMPLE REUSE BATCH | SIMPLE |
........................... | ........................... | .......................... | .............. |
此處只有平常用到的,其他可以查詢相關資料。
一個配置完整的 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="autoMappingBehavior" value="PARTIAL"/>
<setting name="de faultExecutorType" value="SIMPLE"/>
<setting name="defaultstatementTimeout" value=25"/>
<setting name="safeRowBoundsEnabled" value="false"/>
<setting name="mapUnderscoreToCamelCase" value="false"/>
<setting name="localCacheScope" value="SESSION"/>
<setting name="jdbcTypeForNull" value="OTHER"/>
<setting name="lazyLoadTriggerMethods value="equals, clone, hashCode, tostring"/>
</settings>