mybatis設置

 <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 子元素設置它的值。默認:不設置。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章