最的一个项目,由原JDBC 自写getConnection 改为apache dbcp 的连接池后。开始还不到出问题,但是数据访问频繁后,出如下错误
严重: 获取connection失败 :data=>org.apache.commons.dbcp.BasicDataSource@1cbb5ad:error=>Cannot get a connection, pool error Timeout waiting for idle object
public class ConnectionSource {
private static Log logger = LogFactory
.getLog("com.java.ods.framework.jdbc.ConnectionSource");
private static BasicDataSource dataSource = null;
public ConnectionSource() {
}
public static void init() {
if (dataSource != null) {
try {
dataSource.close();
} catch (Exception e) {
logger.error("关闭dataSource失败 :data=>" + dataSource + ":error=>"
+ e.getMessage());
}
dataSource = null;
}
try {
Properties p = new Properties();
p.setProperty("driverClassName", "com.mysql.jdbc.Driver");
p
.setProperty(
"url",
"jdbc:mysql://localhost:3306/orderDishesSystem?useUnicode=true&characterEncoding=gbk");
p.setProperty("password", "mysql");
p.setProperty("username", "root");
p.setProperty("maxActive", "500");
p.setProperty("maxIdle", "100");
p.setProperty("maxWait", "1000");
p.setProperty("removeAbandoned", "false");
p.setProperty("removeAbandonedTimeout", "120");
p.setProperty("testOnBorrow", "true");
p.setProperty("logAbandoned", "true");
dataSource = (BasicDataSource) BasicDataSourceFactory
.createDataSource(p);
} catch (Exception e) {
logger.error("产出dataSource失败 :data=>" + dataSource + ":error=>"
+ e.getMessage() + e);
}
}
public static synchronized Connection getConnection() {
Connection conn = null;
try {
if (dataSource == null) {
init();
}
if (dataSource != null) {
conn = dataSource.getConnection();
}
} catch (SQLException e) {
logger.error("获取connection失败 :data=>" + dataSource + ":error=>"
+ e.getMessage());
}
return conn;
}
public static void main(String[] args) {
logger.info(ConnectionSource.getConnection());
}
}
望各位指指招,小弟有礼了.
分享到:
相关推荐
创建dbcp连接,dbcp(Spring)
开发工具 commons-dbcp2-2.1.1开发工具 commons-dbcp2-2.1.1开发工具 commons-dbcp2-2.1.1开发工具 commons-dbcp2-2.1.1开发工具 commons-dbcp2-2.1.1开发工具 commons-dbcp2-2.1.1开发工具 commons-dbcp2-2.1.1开发...
Struts的java.lang.ClassNotFoundException: org.apache.commons.dbcp.BasicDataSource异常的解决方法
DBCP连接池DBCP和C3P0配置,可以对数据源进行各种有效的控制
DBCP的依赖Jar包,完整的,亲测能用,欢迎下载!DBCP的依赖Jar包,完整的,亲测能用,欢迎下载!
commons-dbcp-1.2.2 commons-dbcp-1.2.2 commons-dbcp-1.2.2
struts初学者的数据池配置出现java.lang.ClassNotFoundException: org.apache.commons.dbcp.BasicDataSource异常的解决办法
DBCP(DataBase Connection Pool)是 apache common上的一个 java 连接池项目,也是 tomcat 使用的连接池组件,依赖 于Jakarta commons-pool 对象池机制,DBCP可以直接的在应用程序中使用。 使用DBCP会用到commons-...
DBCP连接池介绍 ----------------------------- 目前 DBCP 有两个版本分别是 1.3 和 1.4。 DBCP 1.3 版本需要运行于 JDK 1.4-1.5 ,...新出的Tomcat JDBC pool,据说比DBCP 1.4要好,未接触,也不在本文讨论范围内。
DBCP
SpringMVC链接mysql数据库,配置需要用到的两个包class="org.apache.commons.dbcp.BasicDataSource
很好的DBCP技术文件,给大家一起分享!
commons中的DBCP连接池jar,用于利用dbcp链接数据库
commons-dbcp.jar dbcp数据库连接池驱动,包括pool、logging两个依赖
dbcp jar包 一个是dbcp的包, 一个是pool包, 两者都导入工程
dbcp连接池
开源数据库连接池dbcp及其文档
commons-dbcp-1.2.2.zip
赠送jar包:commons-dbcp-1.4.jar; 赠送原API文档:commons-dbcp-1.4-javadoc.jar; 赠送源代码:commons-dbcp-1.4-sources.jar; 赠送Maven依赖信息文件:commons-dbcp-1.4.pom; 包含翻译后的API文档:commons-...
commons-dbcp-1.4,到官网下载慢到抽筋,传这里来了。