Mysql 如何配置Hibernate C3P0池

Mysql 如何配置Hibernate C3P0池,mysql,hibernate,connection-pooling,c3p0,Mysql,Hibernate,Connection Pooling,C3p0,我的hibernate连接池出现问题,导致mysql会话断开。 因此,我在谷歌上搜索了一下,并使用了我发现的C3P0技术来解决这个问题,但错误仍然存在:8小时后连接丢失: 这是我的hibernate配置文件: <property name="hibernate.bytecode.use_reflection_optimizer">false</property> <property name="hibernate.c3p0.max_size">

我的hibernate连接池出现问题,导致mysql会话断开。
因此,我在谷歌上搜索了一下,并使用了我发现的C3P0技术来解决这个问题,但错误仍然存在:8小时后连接丢失:

这是我的hibernate配置文件:

    <property name="hibernate.bytecode.use_reflection_optimizer">false</property>
    <property name="hibernate.c3p0.max_size">20</property>
    <property name="hibernate.c3p0.max_statement">100</property>
    <property name="hibernate.c3p0.min_size">5</property>
    <property name="hibernate.c3p0.timeout">1800</property>
    <property name="hibernate.c3p0.idle_test_period">300</property>
    <property name="hibernate.c3p0.acquire_increment">2</property>
    <property name="hibernate.c3p0.preferredTestQuery">SELECT 1;</property>
    <property name="hibernate.c3p0.testConnectionOnCheckout">true</property>
    <property name="hibernate.c3p0.validate">true</property>
    <property name="connection.provider_class">org.hibernate.connection.C3P0ConnectionProvider</property>
    <property name="hibernate.connection.driver_class">com.mysql.jdbc.Driver</property>


    <property name="hibernate.connection.url">jdbc:mysql://localhost/cabinet?characterEncoding=UTF-8</property>
    <property name="hibernate.connection.username">root</property>
    <property name="hibernate.current_session_context_class">thread</property>
    <property name="hibernate.dialect">org.hibernate.dialect.MySQLDialect</property>
    <property name="hibernate.search.autoregister_listeners">false</property>
    <property name="hibernate.show_sql">true</property>
false
20
100
5.
1800
300
2.
选择1;
真的
真的
org.hibernate.connection.C3P0ConnectionProvider
com.mysql.jdbc.Driver
jdbc:mysql://localhost/cabinet?characterEncoding=UTF-8
根
线
org.hibernate.dialogue.mysqldialogue
假的
真的
这是我的POM文件:

 <?xml version="1.0" encoding="UTF-8"?><project xmlns="http://maven.apache.org/POM/4.0.0"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
  <modelVersion>4.0.0</modelVersion>
  <groupId>cabinet</groupId>
  <artifactId>cabinet</artifactId>
  <version>0.0.1</version>
  <description></description>
  <dependencies>
    <dependency>
      <groupId>junit</groupId>
      <artifactId>junit</artifactId>
      <version>4.8.1</version>
    </dependency>
    <dependency>
      <groupId>mysql</groupId>
      <artifactId>mysql-connector-java</artifactId>
      <version>5.1.9</version>
    </dependency>
    <dependency>
      <groupId>javax.transaction</groupId>
      <artifactId>jta</artifactId>
      <version>1.1</version>
    </dependency>
    <dependency>
      <groupId>javassist</groupId>
      <artifactId>javassist</artifactId>
      <version>3.12.1.GA</version>
    </dependency>
    <dependency>
      <groupId>org.hibernate</groupId>
      <artifactId>hibernate-annotations</artifactId>
      <version>3.5.0-Final</version>
    </dependency>
    <dependency>
      <groupId>org.slf4j</groupId>
      <artifactId>slf4j-api</artifactId>
      <version>1.7.5</version>
    </dependency>
    <dependency>
      <groupId>org.slf4j</groupId>
      <artifactId>slf4j-simple</artifactId>
      <version>1.7.5</version>
    </dependency>
    <dependency>
      <groupId>c3p0</groupId>
      <artifactId>c3p0</artifactId>
      <version>0.9.1.2</version>
    </dependency>
    <dependency>
      <groupId>log4j</groupId>
      <artifactId>log4j</artifactId>
      <version>1.2.9</version>
    </dependency>
    <dependency>
      <groupId>org.apache.struts</groupId>
      <artifactId>struts2-core</artifactId>
      <version>2.3.16.3</version>
    </dependency>
    <dependency>
      <groupId>opensymphony</groupId>
      <artifactId>sitemesh</artifactId>
      <version>2.4.2</version>
    </dependency>
    <dependency>
      <groupId>org.apache.struts</groupId>
      <artifactId>struts2-sitemesh-plugin</artifactId>
      <version>2.3.3</version>
    </dependency>
    <dependency>
      <groupId>jstl</groupId>
      <artifactId>jstl</artifactId>
      <version>1.2</version>
    </dependency>
    <dependency>
      <groupId>org.apache.struts</groupId>
      <artifactId>struts2-json-plugin</artifactId>
      <version>2.1.8</version>
    </dependency>
    <dependency>
      <groupId>com.jgeppert.struts2.jquery</groupId>
      <artifactId>struts2-jquery-plugin</artifactId>
      <version>3.7.1</version>
    </dependency>
    <dependency>
      <groupId>com.jgeppert.struts2.bootstrap</groupId>
      <artifactId>struts2-bootstrap-plugin</artifactId>
      <version>2.0.0</version>
    </dependency>
    <dependency>
      <groupId>org.hibernate</groupId>
      <artifactId>hibernate-c3p0</artifactId>
      <version>4.3.4.Final</version>
    </dependency>  

4.0.0
内阁
内阁
0.0.1
朱尼特
朱尼特
4.8.1
mysql
mysql连接器java
5.1.9
javax.transaction
jta
1.1
javassist
javassist
3.12.1.GA
org.hibernate
休眠注释
3.5.0-最终版本
org.slf4j
slf4j api
1.7.5
org.slf4j
slf4j简单
1.7.5
c3p0
c3p0
0.9.1.2
log4j
log4j
1.2.9
org.apache.struts
struts2型芯
2.3.16.3
开放交响乐团
网站
2.4.2
org.apache.struts
struts2 sitemesh插件
2.3.3
jstl
jstl
1.2
org.apache.struts
struts2 json插件
2.1.8
com.jgeppert.struts2.jquery
struts2 jquery插件
3.7.1
com.jgeppert.struts2.bootstrap
struts2引导插件
2.0.0
org.hibernate
hibernate-c3p0
4.3.4.最终版本
是否有任何要更正的配置属性或要添加的依赖项?

您的c3p0配置似乎被忽略。我认为您有两个不同的hibernate核心版本,一个来自hibernate注解3.5.0-Final,另一个来自hibernate-c3p0.4.3.4-Final。删除hibernate annotations 3.5.0-Final依赖项,因为从v3.5开始,hibernate core中已经包含了注释。您的hibernate-C3P04.3.4.Final依赖项将添加hibernate core 4.3.4.Final。

谢谢,我将测试它并告诉您结果。尝试一下,它可以在“选择”下工作,但当我执行“插入”时同样的错误也发生了,我在日志中发现:[http-bio-8080-exec-6]WARN org.hibernate.util.jdbceptionreporter-SQL错误:0,SQLState:08003[http-bio-8080-exec-6]error org.hibernate.util.jdbceptionreporter-连接关闭后不允许任何操作。连接被驱动程序隐式关闭。