一个很多用java开发网站都会遇到的问题(关于连接池)?
很多人在使用jsp开发的网站当中。都涉及到数据库的连接池没有及时正确地释放。最终导致网站无法正常运行的情况。
因为这些线程的泄露在本地测试时。基本上很难发现。或者是通过修改他人程序时很难发现那里没正常关闭。但一旦放到网站运行时。线程不够的问题就频频出现了。
大家有没一个方法。可以监控到网站的连接池的运行情况。比如:现在在用多少个?那些文件长时间占用线程。从而能让我们更快速地修正问题。
当然这种问题对于老手来说。可能很简单。对于新手来说可能是一个好事。
------解决方案--------------------关注
------解决方案--------------------up
------解决方案--------------------来学习了
------解决方案--------------------做个后台检测程序不不就可以了?
------解决方案--------------------做个查询数据库连接的jsp
------解决方案--------------------private StackTraceElement getcaller(){
StackTraceElement stack[] = (new Throwable()).getStackTrace();
int i;
for (i=0; i < stack.length; i++) {
StackTraceElement ste=stack[i];
String className= ste.getClassName();
if(className.equals(getClass().getName())){
continue;
}
return ste;
}
return null;
}
public Connection getConn(){
.....
String callInfo= "get from "+ ste.getClassName()+ ". "+ste.getMethodName()
+ " line: " + ste.getLineNumber();
}
自已做的连接池里的一部分,楼主可以参考一下。