我在我的(简单)应用程序中使用Glassfish 3.1,JEE6 JPA Annotations,Hibernate提供程序和Derby数据库。我似乎在连接池方面遇到了很多困难。基本上,我的应用程序在没有安全性的情况下运行良好,但现在我已经创建了一个安全领域,我发现无论我将池设置为什么大小,我都会运行连接。显然,我在代码中做了一些事情,这意味着在servlet请求完成后,连接没有返回到池中。
我已经在StackOverflow上看到了各种发布和建议,并尝试了所有这些......似乎没有任何效果。
我想知道的是......如何从Glassfish中获取日志和跟踪信息?我需要找出为什么它没有返回到池的连接。这样我希望能够找到问题的根源。
非常感谢!
答案 0 :(得分:0)
它始终是第一个猜测,由于缺乏清理,连接不会返回池中。
确保:
在每条路径中。
这是好习惯,做
使用
try
{
//open
//work
}
catch
{
//exception handling
}
finally
{
//close
}
处理这些情况的任何地方。
旁注: 像findbugs / sonar这样的静态分析仪能够检测到这些情况。