【发布时间】:2010-01-19 15:37:55
【问题描述】:
我正在用 Java 编写一个 WebService 来创建和调用这个类:
public class Manager{
private Connection aConnection;
public CacheManager(){
//We get a connection
aConnection = java.sql.DriverManager.getConnection("jdbc:mysql://localhost/mydb?user=root&password=";
}
// Insert a datalist into a table
public void insertIntoDB(List listData, String tableName, StringData previousData)
{
// Some code using database
}
主要问题是在调用 web 服务后连接没有立即关闭。这意味着对 web 服务的 100 次调用会创建与数据库的 100 个连接。它会创建 MySQL 错误“连接的用户过多”如果我等待 2 分钟,垃圾收集器会销毁对象,并且 web 服务可以再次工作。
有人知道如何绕过这个问题吗?
谢谢!!
【问题讨论】:
标签: java sql mysql web-services garbage-collection