Tag: 连接关闭

即使使用C3P0 +显式session.close(),Hibernate连接也不会关闭

Hibernate与MySQL的连接我的数据库没有关闭。 在10秒内点击10次之后,我从MySQL Workbench(在我的开发机器中获得此连接统计数据。我是唯一的用户)。 MySQL Workbench服务器状态 我有那些 C3P0并运行(从log4j检查,没有与C3P0相关的问题,似乎正在运行) 一个ServletReqestListener,用于检查是否存在打开的会话,并在requestDestroyed()方法中将其关闭。 Hibernate Session对象保存在ThreadLocal中,因此每个请求只有一个连接,在第一次查询时打开,并在ServletRequestListener中关闭。 每次打开会话并关闭会话时,我都会将“Session Opened”和“Session Closed”输出到System.out,如代码示例中所示。 在每个请求,每个页面刷新, 我得到“会话打开”和“会话结束”,分别 。 所以我的小逻辑有效。 但是连接没有关闭。 我的hibernate.cfg.xml false com.mysql.jdbc.Driver officenic jdbc:mysql://localhost/officenic officenic org.hibernate.dialect.MySQL5InnoDBDialect 1 100 5 0 1 100 我想在每次关闭会话时调用的代码块。 if (session == null) return; if (session.isOpen()) { if (session.isDirty()) session.flush(); session.close(); System.out.println(“Session closed”); } 我错过了什么吗?