MyBatis配置C3P0連線池
阿新 • • 發佈:2018-11-20
這兩天學到Mybatis感覺就要瘋了,第一次接觸,我是不是應該寫點筆記,下面呢,記錄一下連線池的配置,防止忘了。
第一步,二話不說,先匯入所需jar包(如圖所示三個)
第二步,繼承UnpooledDataSourceFactory的類
Mybatis沒有幫你實現C3P0資料庫連線池,但是提供了一個UnpooledDataSourceFactory類,只要繼承該類就可以實現C3P0連線池,
import org.apache.ibatis.datasource.unpooled.UnpooledDataSourceFactory;
import com.mchange.v2.c3p0.ComboPooledDataSource;
public class C3P0DataSourceFactory extends UnpooledDataSourceFactory{
public c3p0DataSourceFactory(){
this.dataSource=new ComboPooledDataSource();
}
}
第三步,寫properties配置檔案
一般,如果你習慣將資料庫的配置放在xml檔案中就不用這樣寫了,這樣寫方便後期維護,都所需內容放在properties配置檔案中,然後只需在Mybatis檔案中讀取即可。
#jdbc
jdbc.driver=com.mysql.jdbc.Driver
jdbc.url=jdbc:mysql://127.0.0.1:3306/mengkong
jdbc.username=root
jdbc.password=root
第四步,手寫mybatis的xml配置檔案
<?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>
<!--讀取外部檔案-->
<properties resource="classpath:jdbc.properties"/>
<!--配置執行環境-->
<environments default="mysql">
<environment id="mysql">
<!--配置事務-->
<transactionManager type="JDBC"/>
<!--配置C3P0連線池-->
<dataSource type="cc.buyfree.util.C3P0DataSourceFactory">
<property name="driver" value="#{jdbc.driver}"></property>
<property name="url" value="#{jdbc.url}"></property>
<property name="username" value="#{jdbc.username}"></property>
<property name="password" value="#{jdbc.password}"></property>
</dataSource>
</environment>
</environments>
<!--配置對映檔案-->
</configuration>
附錄,直接xml配置
如果直接使用xml配置,不引用外部檔案,可以忽略第三和第四步,如下。
<?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>
<!--配置執行環境-->
<environments default="mysql">
<environment id="mysql">
<!--配置事務-->
<transactionManager type="JDBC"/>
<!--配置C3P0連線池-->
<dataSource type="cc.buyfree.util.C3P0DataSourceFactory">
<property name="driver" value="com.mysql.jdbc.Driver"></property>
<property name="url" value="jdbc:mysql://127.0.0.1:3306/mengkong"></property>
<property name="username" value="root"></property>
<property name="password" value="root"></property>
</dataSource>
</environment>
</environments>
<!--配置對映檔案-->
</configuration>