dbcp 连接池

来源:互联网 发布:php 星期几 编辑:程序博客网 时间:2024/05/17 15:22

dbcp-config.properties

#连接设置

driverClassName=oracle.jdbc.driver.OracleDriver
url=jdbc:oracle:thin:@127.0.0.1:1521:XE
username=sunny
password=1234


#<!-- 初始化连接 -->
initialSize=10


#最大连接数量
maxActive=50


#<!-- 最大空闲连接 -->
maxIdle=20


#<!-- 最小空闲连接 -->
minIdle=5


#<!-- 超时等待时间以毫秒为单位 6000毫秒/1000等于60秒 -->
maxWait=60000




#JDBC驱动建立连接时附带的连接属性属性的格式必须为这样:[属性名=property;] 
#注意:"user" 与 "password" 两个属性会被明确地传递,因此这里不需要包含他们。
connectionProperties=useUnicode=true;characterEncoding=utf8


#指定由连接池所创建的连接的自动提交(auto-commit)状态。

defaultAutoCommit=true




public class DBCPUtil {
private static DataSource ds = null;
// 得到池子
static {
Properties pro = new Properties();
try {
pro.load(DBCPUtil.class.getClassLoader().getResourceAsStream("dbcpconfig.properties"));
ds = BasicDataSourceFactory.createDataSource(pro);
} catch (Exception e) {
e.printStackTrace();
}
}
// 得到连接
public static Connection getConnection() {
try {
return ds.getConnection();
} catch (SQLException e) {
e.printStackTrace();
}
return null;
}
//关闭资源
public static void myClose(Connection conn,Statement st,ResultSet rs) {
if(rs!=null) {
try {
rs.close();
} catch (SQLException e) {
e.printStackTrace();
}
rs=null;
}
if(st!=null) {
try {
st.close();
} catch (SQLException e) {
e.printStackTrace();
}
st=null;
}
if(conn!=null) {
try {
conn.close();
} catch (SQLException e) {
e.printStackTrace();
}
conn=null;
}
}