我已经构建了一个应用程序(app1),它可以查看并记录数据库中的某些字段。此应用程序与另一个应用程序(app2)共享数据库,该应用程序在启动时需要与其进行单独连接,但一旦启动(app2),就可以允许其他连接到数据库。在我的应用程序(app1)中,我使用Spring连接到数据库创建了一个dao对象,显然,连接永远不会关闭,导致app2在启动时崩溃。根据我的阅读,Spring应该自动处理打开和关闭它管理的所有数据库连接。我不确定我可以分享任何代码来帮助描绘我的问题,但如果需要一些,我会发布我能做的。谢谢你的帮助。
答案 0 :(得分:2)
如果您正在使用JDBC模板,则不必担心显式关闭连接,Spring将负责内部管理连接池并从该池获取/释放连接。
答案 1 :(得分:0)
在应用程序之间共享连接时,我建议使用连接池。连接的打开和关闭可以通过注释(@Transactional)通过声明性事务划分来完成。
http://faheemsohail.com/2012/01/configuring-c3p0-connection-pooling-with-spring-and-hibernate/
答案 2 :(得分:-1)
这对你有用吗?
public void closeCon() {
{
if (con != null)
try {
con.close();
} catch (SQLException e) {
e.printStackTrace();
}