1. 程式人生 > >MyBatis配置C3P0連線池

MyBatis配置C3P0連線池

這兩天學到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>