C3P0和数据库连接池【代码库】

326 阅读1分钟

tags: 代码库


前言

为了复用,记载一些以前写过的工具类、方法

#c3p0配置文件【c3p0-config.xml】#


<?xml version="1.0" encoding="UTF-8" ?>
<c3p0-config>
	<default-config>
		<property name="driverClass">com.mysql.jdbc.Driver</property>
		<property name="jdbcUrl">jdbc:mysql://localhost:3306/zhongfucheng?characterEncoding=utf8</property>
		<property name="user">root</property>
		<property name="password">root</property>
	
		<property name="acquireIncrement">5</property>
		<property name="initialPoolSize">10</property>
		<property name="minPoolSize">5</property>
		<property name="maxPoolSize">20</property>
	</default-config>
	
	<named-config name="mysql">
		<property name="driverClass">com.mysql.jdbc.Driver</property>
		<property name="jdbcUrl">jdbc:mysql://localhost:3306/zhongfucheng</property>
		<property name="user">root</property>
		<property name="password">root</property>
	
		<property name="acquireIncrement">5</property>
		<property name="initialPoolSize">10</property>
		<property name="minPoolSize">5</property>
		<property name="maxPoolSize">20</property>
	</named-config>
	
	
	<named-config name="oracle">
		<property name="driverClass">oracle.jdbc.driver.OracleDriver</property>
		<property name="jdbcUrl">jdbc:oracle:thin:@//localhost:1521/事例名...</property>
		<property name="user">用户名</property>
		<property name="password">密码</property>
	
		<property name="acquireIncrement">5</property>
		<property name="initialPoolSize">10</property>
		<property name="minPoolSize">5</property>
		<property name="maxPoolSize">20</property>
	</named-config>
</c3p0-config>



数据库连接池c3p0

	
	import com.mchange.v2.c3p0.ComboPooledDataSource;
	
	import javax.sql.DataSource;
	import java.sql.Connection;
	import java.sql.SQLException;
	
	/**
	 * Created by ozc on 2017/2/22.
	 */
	public class Utils2DB {
	
	    private static ComboPooledDataSource comboPooledDataSource = null;
	
	        static {
	
	            //它会自动寻找配置文件,节点为mysql的数据库
	            comboPooledDataSource = new ComboPooledDataSource();
	        }
	
	
	    public static DataSource getDataSource() {
	        return comboPooledDataSource ;
	    }
	
	    public static Connection connection() {
	        try {
	            return comboPooledDataSource.getConnection();
	        } catch (SQLException e) {
	            e.printStackTrace();
	            throw new RuntimeException("数据库初始化失败了!");
	        }
	    }
	}

如果您觉得这篇文章帮助到了您,可以给作者一点鼓励