【发布时间】:2016-03-09 10:42:44
【问题描述】:
我有一个使用javax.sql.DataSource 的网络服务,如下所示:
public class AccessMysql {
private static DataSource dataSource=null;
public AccessMysql(){
if (dataSource == null){
dataSource = DataSourceBuilder
.create()
.username("[username]")
.password("[password]")
.url("jdbc:mysql://[server]/testdb")
.driverClassName("com.mysql.jdbc.Driver")
.build();
}
}
...
}
这个类第一次运行下面的mysql命令:
show processlist
显示 11 个连接。
该服务可以多次访问数据库,而我的连接数(如通过“show processlist”所示)始终保持在 11。
这 11 个连接会自行消失吗?有什么办法可以从 Java 中关闭它们?
【问题讨论】:
-
你认为连接池是如何工作的?
-
@Gergely Bacso - 感谢您的编辑。我已禁用用户/密码。我不敢相信我做到了。在喝完第三杯咖啡之前,不要再在 stackoverflow 上发帖了。