1. 程式人生 > 實用技巧 >12mybatis核心配置檔案

12mybatis核心配置檔案

核心配置檔案

配置檔案

<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE configuration PUBLIC "-//mybatis.org//DTD Config 3.0//EN" "http://mybatis.org/dtd/mybatis-3-config.dtd">
<configuration>
	<!--各種配置-->
</configuration>

主要配置有

properties 載入外部properties檔案
settings 設定
typeAliases	類型別名:許可權定類名-別名
typeHandlers 型別處理器:java和資料庫之間型別轉換
plugins 外掛:整合第三方外掛
environments 環境:配置資料來源環境
	environment 環境變數
		transactionManager 事務處理器
		dataSource 資料來源
mappers 對映器:載入對映檔案

environments

<environments default="developement"> <!--指定預設環境-->
    <environment id="developement"> <!--環境id-->
        <transactionManager type="JDBC"/> <!--事務管理器型別是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>

transcationManager事務管理器型別有兩種

  • JDBC:直接使用JDBC的提交和回滾設定
  • MANAGED:從來不提交和回滾事務,所以一般不用。

dataSource資料來源型別

  • UNPOOLED:不適用連線池,每次請求都開啟和關閉連線
  • POOLED:使用連線池
  • JNDI:為了能在EJB或者應用伺服器這類容器中使用(先不講)

mappers

mappers對映器,載入對映檔案

<mappers>
	<mapper resource="UserMapper.xml"/>
</mappers>

其中載入對映檔案方式如下:

  • 對映檔案的相對資源路徑:<mapper resource="xx/xx/UserMapper.xml"/>
  • 還有其它載入方式,先不講

properties

一般習慣將資料來源的配置資訊單獨抽取成一個properties檔案,該標籤可以載入properties配置檔案

<properties resource="jdbc.properties"/>
<environments default="developement"> <!--指定預設環境-->
    <environment id="developement"> <!--環境id-->
        <transactionManager type="JDBC"/> <!--事務管理器型別是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>

typeAliases

類型別名:將Java全限定類名用一個短的名字代替。如果用一個別名代替,那麼在對映檔案中可以使用別名。如將java.lang.Integer命名為int

<delete id="delete" parameterType="int">
	delete from user where id=#{id}
</delete>

在Mybatis中,已經有許多設定好的別名,如:

string->String型別
long->Long型別
int->Integer型別

在核心配置檔案中自定義別名:(一般放在核心配置檔案前面,避免別的配置提前呼叫)

<typeAliases>
    <typeAlias type="com.baidu.domain.User" alias="user"/>
</typeAliases>