java 通过连接池来创建连接数据库

一.导入包

 proxool-0.9.1.jar
 proxool-cglib.jar

二.创建类

import java.sql.CallableStatement;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;


public class DBConnection {
private static String driverClass = "org.logicalcobwebs.proxool.ProxoolDriver";

/**
* 获取数据库连接ytcd,ytcd

* @return Connection
*/
public Connection getConnOne() {
Connection connOne = null;
try {
Class.forName(driverClass);


connOne = DriverManager.getConnection("proxool.connOne");
} catch (Exception e) {
e.printStackTrace();
}
return connOne;
}


/**
* 获取数据库连接

* @return Connection
*/
public Connection getConnTwo() {
Connection connTwo = null;
try {
Class.forName(driverClass);


connTwo = DriverManager.getConnection("proxool.connTwo");
} catch (Exception e) {
e.printStackTrace();
}
return connTwo;
}


/**
* 释放连接 Connection

* @param Connection
*/
public void CloseConn(Connection conn) {
if (conn != null) {
try {
conn.close();
} catch (SQLException e) {
e.printStackTrace();
}
}
}


/**
* 释放连接 CallableStatement

* @param CallableStatement
*/
public void CloseCallSta(CallableStatement cstmt) {
if (cstmt != null) {
try {
cstmt.close();
} catch (SQLException e) {
e.printStackTrace();
}
}
}


/**
* 释放连接 PreparedStatement

* @param PreparedStatement
*/
public void ClosePrepSta(PreparedStatement pstmt) {
if (pstmt != null) {
try {
pstmt.close();
} catch (SQLException e) {
e.printStackTrace();
}
}
}


/**
* 释放连接 ResultSet

* @param ResultSet
*/
public void CloseResuSet(ResultSet rs) {
if (rs != null) {
try {
rs.close();
} catch (SQLException e) {
e.printStackTrace();
}
}
}

}

三.配置proxool.xml

<?xml version="1.0" encoding="UTF-8"?>
<something-else-entirely>
<proxool>
<alias>connOne</alias> <!--数据源的别名 -->
<driver-url>jdbc:oracle:thin:@162.68.420.49:1599:gggg</driver-url><!--url连接串 -->
<driver-class>oracle.jdbc.driver.OracleDriver</driver-class><!--驱动类 -->
<driver-properties>
<property name="user" value="xx" /><!--用户名 -->
<property name="password" value="xx" /><!--密码 -->
</driver-properties>
<!--最大连接数(默认 5个),超过了这个连接数,再有请求时,就排在队列中等候,最大的等待请求数由 maximum-new-connections决定 -->
<maximum-connection-count>20</maximum-connection-count>
<!--最小连接数(默认2个) -->
<minimum-connection-count>2</minimum-connection-count>
<!--proxool自动侦察各个连接状态的时间间隔(毫秒),侦察到空闲的连接就马上回收,超时的销毁 默 23. 24.认30秒 -->
<house-keeping-sleep-time>90000</house-keeping-sleep-time>
<!--没有空闲连接可以分配而在队列中等候的最大请求数,超过这个请求数的用户连接就不会被接受 -->
<maximum-new-connections>10</maximum-new-connections>
<!--最少保持的空闲连接数(默认2个) -->
<prototype-count>5</prototype-count>
<!--在使用之前测试 -->
<test-before-use>false</test-before-use>
<!--用于保持连接的测试语句 -->
<house-keeping-test-sql>select id from t_sysadmin
</house-keeping-test-sql>
</proxool>

<proxool>
<alias>connTwo</alias> <!--数据源的别名 -->
<driver-url>jdbc:oracle:thin:@1455.64.552232.64:1591:tgggg</driver-url><!--url连接串 -->
<driver-class>oracle.jdbc.driver.OracleDriver</driver-class><!--驱动类 -->
<driver-properties>
<property name="user" value="ggg" /><!--用户名 -->
<property name="password" value="ddd" /><!--密码 -->
</driver-properties>
<!--最大连接数(默认 5个),超过了这个连接数,再有请求时,就排在队列中等候,最大的等待请求数由 maximum-new-connections决定 -->
<maximum-connection-count>20</maximum-connection-count>
<!--最小连接数(默认2个) -->
<minimum-connection-count>2</minimum-connection-count>
<!--proxool自动侦察各个连接状态的时间间隔(毫秒),侦察到空闲的连接就马上回收,超时的销毁 默 23. 24.认30秒 -->
<house-keeping-sleep-time>90000</house-keeping-sleep-time>
<!--没有空闲连接可以分配而在队列中等候的最大请求数,超过这个请求数的用户连接就不会被接受 -->
<maximum-new-connections>10</maximum-new-connections>
<!--最少保持的空闲连接数(默认2个) -->
<prototype-count>5</prototype-count>
<!--在使用之前测试 -->
<test-before-use>false</test-before-use>
<!--用于保持连接的测试语句 -->
<house-keeping-test-sql>select id from t_sysadmin
</house-keeping-test-sql>
</proxool>
</something-else-entirely>  


四.web.xm 中配置

<servlet>
<servlet-name>ServletConfigurator</servlet-name>
<servlet-class>org.logicalcobwebs.proxool.configuration.ServletConfigurator</servlet-class>
<init-param>
<param-name>xmlFile</param-name>
<param-value>WEB-INF/proxool.xml</param-value>
</init-param>
<load-on-startup>1</load-on-startup>
</servlet>


五.类中调用

    。。。。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值