释放连接到c3p0连接池

时间:2012-04-10 09:57:29

标签: spring hibernate c3p0

我遇到了一个问题,实际上我在我的项目中使用c3p0进行连接池,它也使用了Spring,Hibernate和JSF。我的问题是,在我的网页中,我们有一个名为“logout”的链接,我希望当用户点击退出时,应该发布连接并将www.google.com重新发送回池中,这是怎么回事。

提前致谢 PRASHANT

1 个答案:

答案 0 :(得分:1)

您期望的是控制登录系统的并发用户数

  

当第三个用户尝试登录时,他应该等待连接   免费

现在,您可以使用并发计数器

来实现此功能
  • 创建一个过滤所有请求的过滤器。
  • 每当创建新请求时,都会递增计数器
  • 当用户注销时递减计数器
  • 当计数器达到最大值时,使该线程等到插槽可用。

您可以通过JMX或单独的管理控制台控制最大用户数。 此外,当处理它的线程终止时,应该释放连接(因为会话对象没有任何引用它可以是GC' d并且在超时之后它将在池中重用)。

最好不要使用数据库资源创建瓶颈。