昨天用hibernate配置了c3p0, 今天来了查看的时候 出现连接错误
hibernate配置文件:
<session-factory>
<!-- <property name="dialect">org.hibernate.dialect.MySQLDialect</property>-->
<property name="connection.url">jdbc:mysql://222.73.114.169:3306/hofd</property>
<property name="connection.username">yang</property>
<property name="connection.password">meJvdMm_ZA_3VT2Awa</property>
<property name="connection.driver_class">com.mysql.jdbc.Driver</property>
<property name="myeclipse.connection.profile">role</property>
<property name="hibernate.connection.provider_class">
org.hibernate.connection.C3P0ConnectionProvider
</property>
<property name="c3p0.min_size">5</property>
<property name="c3p0.max_size">30</property>
<property name="c3p0.time_out">120</property>
<property name="c3p0.max_statement">50</property>
<property name="testConnectionOnCheckout">true</property>
</session-factory>
查找原因 : mysql隔一段时间会把连接自动断掉(默认8小时,在mysql中my.ini中加入wait_timeout=“”设置时间),当连接断掉时,c3p0不知道连接已经断开,仍把失效的连接返回,所以出现异常. <property name="c3p0.time_out">120</property> 设置超时时间,超过了抛出异常。
造成的后果: 当mysql连接断开,c3p0配置的连接超时时间还没超过时,会一直报异常
当mysql连接断开,c3p0配置的连接超时时间超时时,第一次访问有异常,再次访问正常。
解决办法:
1.增加wait_timeout的时间。
2.减少Connection pools中connection的lifetime。 即timeout属性
3.测试Connection pools中connection的有效性:
加入代码: <property name="testConnectionOnCheckout">true</property>或
<property name="hibernate.c3p0.validate">true</property>
分享到:
相关推荐
c3p0是款强大的数据库连接池 其完整包要到官网下载 第一次使用学习的同学一定很是头大!因为不知道怎么写xml环境配置文件 所以本人稍微做了整理 里面有样板的xml配置文件 注意:1 配置文件名不能乱改(否则c3p0会找不到...
这是c3p0-0.9.5.2(含配文件)连接池技术的资源,里面含c3p0-0.9.5.2.jar包,这是c3p0数据库连接池的jar包,mchange-commons-java-0.2.11.jar是数据库连接池的依赖包,导入时,要一同导入,否则会产生错误。...
网上传言C3P0是因为本身的BUG问题,然而今天我遇到这个问题并解决了,结果发现并不是。通过配置c3p0.maxStatements=0 这种方案只是治标不治本,或者干脆无效。我上传的解决方案肯定能解决这个问题的根本原因。出现...
JDBC整合c3p0数据库连接池 解决Too many connections错误 连接池是创建和管理一个连接的缓冲池的技术,这些连接准备好被任何需要它们的线程使用。博客地址 ...
(1)项目使用javaee经典三层架构+工厂类实现解耦。 ... (3)使用Mysql数据库,c3p0连接池连接数据库、解决了线程安全问题和事务控制。 (4)全站实现权限过滤器和编码过滤器、统一错误页面提示。
初始为500,结果还是错误, 在修改为36000,并且加大了c3p0连接数cpool.maxPoolSize=100 这个时候出现下面错误现象2 Connections could not be acquired from the underlying database! 一直没有定位出来,靠,
1、将数据库连接池由C3P0升级为Druid实现; 2、废弃WEB-INF下的数据库连接配置,改用conf下的config.properties来实现配置; 3、将上一个版本留下的SQL模糊Like搜索功能修改为Lucene实现; 4、添加EhCache支持,对...
c3p0池化数据库连接 以多用户体重跟踪应用程序为例。 Mybatis MyBatis ORM框架 HSQLDB嵌入式内存数据库 从标准分支继承功能 mybatis-远程数据库 连接到远程MySQL主机/数据库 c3p0池化数据库连接 继承mybatis分支的...
response.write \"<script language=javascript>alert(\'传参错误!参数 \"&query_name&\" 的值中包含非法字符串!\\n\\n\');location=\'\"&request.ServerVariables(\"HTTP_REFERER\")&\"\'</Script>\" response....
Druid是目前最好的数据库连接池,在功能、性能、扩展性方面,都超过其他数据库连接池,包括DBCP、C3P0、BoneCP、Proxool、JBoss DataSource。 Druid已经在阿里巴巴部署了超过600个应用,经过一年多生产环境大规模...
Druid:是阿里巴巴开源平台上一个数据库连接池实现,它结合了C3P0、DBCP、PROXOOL等DB池的优点,同时加入了日志监控,可以很好的监控DB池连接和SQL的执行情况 MariaDB:是最流行的开源关系型数据库之一。它由 MySQL...
0 u7 [# E9 P# i: i2 y *#0377# EEPROM错误显示 % p" P$ S* O9 O5 j5 j% A *#0427# WATCHDOG信号路径设置 . [' D: f) g' R; x, }* q *#0523# 调节对比度,谨慎修改; ) o- ~* L2 O6 B+ ]) S$ y# i *#0636# ...
1 N6 f7 Q+ p: _0 L: e0 n2 n5 o7 g1 y 下表中给出了标识名,客户建立的搜索内容和相对标识名的具体的例子。 ( `/ b$ c$ Q: f5 G1 h5 j6 t4 x' X! J& K/ L (^60090102b^) - o; a/ R( W" Q( H+ w7 W' e$ n# [' z7 S ...
1 0 X 1 1 0 0 0 0 0 0 0 0 0 消隐 1 0 X 1 1 0 1 0 0 0 0 0 0 0 消隐 1 0 X 1 1 1 0 0 0 0 0 0 0 0 消隐 1 0 X 1 1 1 1 0 0 0 0 0 0 0 消隐 0 0 X X X X X 锁存 锁存* 3.1.5 显示电路 显示电路主要共阴LED显示。到...
c3p0连接池 集成开发环境:Idea 2019 web容器:Tomcat 9 需求分析 普通用户: 用户注册:用户进入注册页面,输入相关信息并点击注册,系统将账号信息存入数据库。 用户登录:用户输入用户名和密码,若账号存在则登录...
2. 修改SalaryManagerSystem/src/c3p0-config.xml文件: 1. jdbcUrl修改为自己的数据库连接字符串。 2. user修改为自己的用户名。 3. password修改为自己的密码。 3. 运行即可。 四、项目运行注意事项: 1. ...
单片机允许的振荡晶体可在 1.2~24MHz之间选择,一般为 11.0592MHz,电容 C2,C3的取值对振荡频率输出的稳定性、 大小及振荡电路起振速度有一定的影响, 可在20~100pF之间选择,典型值位 30pF (2)计算机每次开始...
图3 时钟电路 单片机允许的振荡晶体可在1.2~24MHz之间选择,一般为11.0592MHz,电容C2,C3的 取值对振荡频率输出的稳定性、大小及振荡电路起振速度有一定的影响,可在20~100p F之间选择,典型值位30pF (2)...
图3 时钟电路 单片机允许的振荡晶体可在1.2~24MHz之间选择,一般为11.0592MHz,电容C2,C3的 取值对振荡频率输出的稳定性、大小及振荡电路起振速度有一定的影响,可在20~100p F之间选择,典型值位30pF (2)...
BoneCP很小,只有四十几K(运行时需要slf4j和guava的支持,这二者加起来就不小了),而相比之下 C3P0 要六百多K。 异步输出框架 AsynWriter 一个Java的类库,用于异步输出记录的简单小框架用于高并发下数据输出使用...