<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>
說明:
cacheEnabled 這個配置使全局的映射器啓用或禁用 true | false true
緩存。
lazyLoadingEnabled 全局啓用或禁用延遲加載。當禁用時, true | false true
所有關聯對象都會即時加載。
aggressiveLazyLoading 當啓用時,有延遲加載屬性的對象在被 true | false true
調用時將會完全加載任意屬性。否則,
每種屬性將會按需要加載。
multipleResultSetsEnabled 允許或不允許多種結果集從一個單獨 true | false true
的語句中返回(需要適合的驅動)。
useColumnLabel 使用列標籤代替列名。不同的驅動在這 true | false true
方便表現不同。參考驅動文檔或充分測
試兩種方法來決定所使用的驅動。
useGeneratedKeys 允許JDBC 支持生成的鍵。需要適合的 true | false false
驅動。如果設置爲true 則這個設置強制
生成的鍵被使用,儘管一些驅動拒絕兼
容但仍然有效(比如Derby )。
autoMappingBehavior 指定MyBatis 如何自動映射列到字段/ NONE, PARTIAL
屬性。PARTIAL 只會自動映射簡單, PARTIAL,
沒有嵌套的結果。FULL 會自動映射任 FULL
意複雜的結果(嵌套的或其他情況)。
defaultExecutorType 配置默認的執行器。SIMPLE 執行器沒 SIMPLE, SIMPLE
有什麼特別之處。REUSE 執行器重用 REUSE,
預處理語句。BATCH 執行器重用語句 BATCH
和批量更新
defaultStatementTimeout 設置超時時間,它決定驅動等待一個數 Any Not Set
據庫響應的時間。 positive (null)
<select
id=”selectPerson”
parameterType=”int”
parameterMap=”deprecated”
resultType=”hashmap”
resultMap=”personResultMap”
flushCache=”false”
useCache=”true”
timeout=”10000”
fetchSize=”256”
statementType=”PREPARED”
resultSetType=”FORWARD_ONLY”
>
屬性 描述
id 在命名空間中唯一的標識符,可以被用來引用這條語句。
parameterType 將會傳入這條語句的參數類的完全限定名或別名。
parameterMap 這是引用外部parameterMap 的已經被廢棄的方法。使用內聯參數
映射和parameterType 屬性。
----------------------- Page 21-----------------------
resultType 從這條語句中返回的期望類型的類的完全限定名或別名。注意集
合情形,那應該是集合可以包含的類型,而不能是集合本身。使
用resultType 或resultMap,但不能同時使用。
resultMap 命名引用外部的resultMap 。返回map 是MyBatis 最具力量的特性,
對其有一個很好的理解的話,許多複雜映射的情形就能被解決了。
使用resultMap 或resultType,但不能同時使用。
flushCache 將其設置爲true,不論語句什麼時候被帶哦用,都會導致緩存被
清空。默認值:false。
useCache 將其設置爲true,將會導致本條語句的結果被緩存。默認值:true。
timeout 這個設置驅動程序等待數據庫返回請求結果,並拋出異常時間的
最大等待值。默認不設置(驅動自行處理)。
fetchSize 這是暗示驅動程序每次批量返回的結果行數。默認不設置(驅動
自行處理)。
statementType STATEMENT,PREPARED 或CALLABLE 的一種。這會讓MyBatis
使用選擇使用Statement,PreparedStatement 或CallableStatement。
默認值:PREPARED。
resultSetType FORWARD_ONLY|SCROLL_SENSITIVE|SCROLL_INSENSITIVE
中的一種。默認是不設置(驅動自行處理)。
insert,update,delete
數據變更語句insert,update 和delete 在它們的實現中非常相似:
<insert
id="insertAuthor"
parameterType="domain.blog.Author"
flushCache="true"
statementType="PREPARED"
keyProperty=""
useGeneratedKeys=""
timeout="20000">
<update
id="insertAuthor"
parameterType="domain.blog.Author"
flushCache="true"
statementType="PREPARED"
timeout="20000">
<delete
id="insertAuthor"
parameterType="domain.blog.Author"
flushCache="true"
statementType="PREPARED"
----------------------- Page 22-----------------------
timeout="20000">
屬性 描述
id 在命名空間中唯一的標識符,可以被用來引用這條語句。
parameterType 將會傳入這條語句的參數類的完全限定名或別名。
parameterMap 這是引用外部parameterMap 的已經被廢棄的方法。使用內聯參數
映射和parameterType 屬性。
flushCache 將其設置爲true,不論語句什麼時候被帶哦用,都會導致緩存被清
空。默認值:false。
timeout 這個設置驅動程序等待數據庫返回請求結果,並拋出異常時間的最
大等待值。默認不設置(驅動自行處理)。
statementType STATEMENT,PREPARED 或CALLABLE 的一種。這會讓MyBatis
使用選擇使用Statement,PreparedStatement 或CallableStatement。
默認值:PREPARED。
useGeneratedKeys (僅對insert 有用)這會告訴 MyBatis 使用 JDBC 的
getGeneratedKeys 方法來取出由數據(比如:像 MySQL 和 SQL
Server 這樣的數據庫管理系統的自動遞增字段)內部生成的主鍵。
默認值:false。
keyProperty (僅對insert 有用)標記一個屬性,MyBatis 會通過getGeneratedKeys
或者通過insert 語句的selectKey 子元素設置它的值。默認:不設置。
mybatis設置
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.