我将 GWT 与 Hibernate、c3p0 和 MySQL 一起使用来生成一个受众有限的 Web 应用程序(每天最多 50 个用户)。在测试期间,我发现 Hibernate 正在打开与每个会话的连接,但没有关闭它,无论使用该close()
方法。
我目前的配置如下:
hibernate.connection.driver_class=com.mysql.jdbc.Driver
hibernate.connection.url=
hibernate.connection.username=
hibernate.connection.password=
hibernate.dialect=org.hibernate.dialect.MySQLDialect
hibernate.current_session_context_class=thread
hibernate.c3p0.min_size=1
hibernate.c3p0.max_size=1
hibernate.c3p0.timeout=10
hibernate.c3p0.max_statements=50
hibernate.c3p0.idle_test_period=10
hibernate.c3p0.unreturned_connection_timeout=1
hibernate.connection.provider_class=org.hibernate.connection.C3P0ConnectionProvider
与应用程序的每个新连接都会创建一个新池。例如,如果我将池大小设置为 3,则到应用程序的 2 个连接会导致 6 个连接,直到应用程序关闭。
预期的行为是在每个事务之后简单地关闭或重用连接。我怎样才能做到这一点?