`

Java jdbc 连接池

阅读更多
package com.cmcc.cs.rpc.utils;

import java.io.IOException;
import java.io.InputStream;
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.Properties;

import org.apache.commons.dbcp.BasicDataSource;

/**
* 数据连接类
*
* @author yw
*
*/
public class DBHelper {
private static BasicDataSource ds = new BasicDataSource();

static {
InputStream is = DBHelper.class.getClassLoader().getResourceAsStream(
"config/DBHelper.properties");
Properties prop = new Properties();
try {
prop.load(is);
System.out.println(prop.getProperty("driver")
+ prop.getProperty("url") + prop.getProperty("username")
+ prop.getProperty("password"));
ds.setDriverClassName(prop.getProperty("driver"));
ds.setUrl(prop.getProperty("url"));
ds.setUsername(prop.getProperty("username").trim());
ds.setPassword(prop.getProperty("password").trim());
ds.setMaxActive(Integer.parseInt(prop.getProperty("maxActive")
.trim()));
ds.setInitialSize(Integer.parseInt(prop.getProperty("initialSize")
.trim()));
ds.setMaxWait(Integer.parseInt(prop.getProperty("maxWait").trim()));
ds.setMaxIdle(Integer.parseInt(prop.getProperty("maxIdle").trim()));
ds.setRemoveAbandoned(Boolean.parseBoolean(prop
.getProperty("removeAbandoned")));
ds.setRemoveAbandonedTimeout(Integer.parseInt(prop.getProperty(
"removeAbandonedTimeout").trim()));
Connection con = ds.getConnection();
System.out.println(con.getClass().getName());
} catch (IOException e) {
e.printStackTrace();
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} finally {
try {
if (is != null)
is.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}

public static Connection getConnection() throws SQLException {
return ds.getConnection();
}

public static void close(ResultSet rs, PreparedStatement ps, Connection conn) {
try {
if (rs != null)
rs.close();
if (ps != null)
ps.close();
if (conn != null)
conn.close();
} catch (SQLException e) {
e.printStackTrace();
}
}
}

//下面是配置文件的信息DBHelper.properties
###############################################33
driver=com.mysql.jdbc.Driver
url=jdbc:mysql://192.168.107.211:33061/sso?useUnicode=true&characterEncoding=UTF-8
username=root
password=root
maxActive=20
initialSize=1
maxWait=60000
maxIdle=20
minIdle=3
removeAbandoned=true
removeAbandonedTimeout=180
connectionProperties=clientEncoding=GBK

//补充连接池,这里需要4个jar包
lib/commons-dbcp-1.4.jar,\
               lib/commons-collections-3.2.1.jar,\
               lib/commons-pool-1.5.6.jar,\
               lib/mysql-connector-java-5.1.6-bin.jar
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics