天天看點

Mybatis全局配置檔案元素的作用與用法

sqlSessionFactory的兩種建構方式

*SqlSessionFactory工廠對象的兩種建立方式

第一種是使用xml檔案來建構

SqlSessionFactory對象的執行個體可以通過SqlSessionFactoryBuilder對象來構

建,而SqlSessionFactoryBuilder則可以通過XML配置檔案建構出SqlSessionFactory的執行個體。

第二種是使用java代碼建構

SqlSessionFactory對象的執行個體可以通過SqlSessionFactoryBuilder對象來構

建,而SqlSessionFactoryBuilder則可以通過一個預先定義

好的Configuration執行個體(java代碼)建構出SqlSessionFactory的執行個體。

所有的配置元素都是在<configuration>元素裡面,<configuration>元素是映射檔案的根元素

Mybatis全局配置檔案元素的作用與用法

1.<properties... />元素,是用來修改配置檔案中資料庫連接配接的資訊

2.<settings>元素主要用于改變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="autoMappingBehavior" value="PARTIAL" />
...
</settings>
           

3.<typeAliases>元素用于為配置檔案中的Java類型設定一個簡短的名字,即設定别名。别名的設定與XML配置相關,其使用的意

義在于減少全限定類名的備援。

//1. 使用<typeAliases>元素配置别名的方法如下:
<typeAliases>
<typeAlias alias="user" type="com.cxit.po.User"/>
</typeAliases>


//2. 當POJO類過多時,可以通過自動掃描包的形式自定義别名,具體如下:
<typeAliases>
<package name="com.cxit.po"/>
</typeAliases>


           

4.typeHandler的作用就是将預處理語句中傳入的參數從javaType(Java類型)轉換為jdbcType(JDBC類型),或者從資料庫取出結果時将jdbcType轉換為javaType

//<typeHandler>元素可以在配置檔案中注冊自定義的類型處理器,它的使用方式有兩種。


//1.注冊一個類的類型處理器
<typeHandlers>
<typeHandler handler="com.cxit.type.CustomtypeHandler" />
</typeHandlers>


//2.注冊一個包中所有的類型處理器
<typeHandlers>
<package name="com.cxit.type" />
</typeHandlers>
           

5.<objectFactoty>元素,MyBatis中預設的ObjectFactory的作用是執行個體化目标類,它既可以通過預設構造方法執行個體化,也可以在參數映射存在的時候通過參數構造方法來執行個體化。通常使用預設的ObjectFactory即可

6.<plugins>元素,用來增加插件;MyBatis允許在已映射語句執行過程中的某一點進行攔截調用,這種攔截調用是通過插件來實作的。<plugins>元素的作用就是配置使用者所開發的插件

7.<environments>元素用于對環境進行配置。MyBatis的環境配置實際上就是資料源的配置,我們可以通過<environments>元素配置多種資料源,即配置多種資料庫。

<environments default="development">
<environment id="development">
<transactionManager type="JDBC" />
<dataSource type="POOLED">
<property name="driver" value="${jdbc.driver}" />
<property name="url" value="${jdbc.url}" />
<property name="username" value="${jdbc.username}" />
<property name="password" value="${jdbc.password}" />
</dataSource>
</environment>
...
</environments>
           

8.<mappers>元素用于指定MyBatis映射檔案的位置,一般可以使用以下4種方法引入映射器檔案,具體如下。

//1.使用類路徑引入
<mappers>
<package name="com.cxit.mapper"/>
</mappers>


//2.使用本地檔案路徑引入
<mappers>
<mapper url="file:///D:/com/cxit/mapper/UserMapper.xml"/>
</mappers>


//3.使用接口類引入
<mappers>
<mapper class="com.cxit.mapper.UserMapper"/>
</mappers>
           

總結:以上就是mabatis的全局配置檔案的元素與作用,一般<properties> <mappers>, <typeAliases>, <environments>等元素用得多一點

繼續閱讀