1:需要添加c3p0jar包
c3p0-0.9.5.2.jar
c3p0-oracle-thin-extras-0.9.5.2.jar --连接oracle特有的
2:需要修改mybatis的总的配置文件Mybatis-config.xml
原先的做法:
<!--配置mysql的数据源-->
<environment id="mysql_development">
<transactionManager type="JDBC"/>
<dataSource type="POOLED">
<property name="driver" value="${mysql.driver}"/>
<property name="url" value="${mysql.url}"/>
<property name="username" value="${mysql.username}"/>
<property name="password" value="${mysql.password}"/>
</dataSource>
</environment>
c3p0的做法:
<!--配置mysql的数据源-->
<environment id="mysql_development">
<transactionManager type="JDBC"/>
<dataSource type="com.newedu.jfw.mybatisday02.util.C3p0DataSourceFactory">
</dataSource>
</environment>
3.自定义一个类型C3p0DataSourceFactory
import com.mchange.v2.c3p0.ComboPooledDataSource;
import org.apache.ibatis.datasource.unpooled.UnpooledDataSourceFactory;
public class C3p0DataSourceFactory extends UnpooledDataSourceFactory{
//自定义的构造方法
public C3p0DataSourceFactory() {
//从父类继承过来的成员变量dataSource,右边是创建一个c3p0的数据库连接池对象。
//需要提供一个c3p0.xml配置文件
this.dataSource=new ComboPooledDataSource();
}
}
c3p0.xml文件配置
<?xml version="1.0" encoding="utf-8"?>
<c3p0-config>
<!-- 默认配置节点 -->
<default-config>
<!-- 数据库连接4大参数 -->
<property name="jdbcUrl">jdbc:mysql://localhost:3306/javaweb0108?useSSL=false&useServerPrepStmts=true&cachePrepStmts=true&prepStmtCacheSize=50&prepStmtCacheSqlLimit=300&rewriteBatchedStatements=true
</property>
<property name="driverClass">com.mysql.jdbc.Driver</property>
<property name="user">root</property>
<property name="password">10086</property>
<!-- 数据库连接池配置参数 -->
<property name="acquireIncrement">3</property>
<property name="initialPoolSize">10</property>
<property name="minPoolSize">2</property>
<property name="maxPoolSize">100</property>
</default-config>
</c3p0-config>
4.写mapper文件
5.写单元测试