问题描述
如题,我获取了spring的dataSource对象调用了Connection conn = dataSource.getConnection();我用conn对象执行完操作以后需要手动关闭这个连接吗conn.close(); 问题补充:配置文件里面对dataSource进行了配置,包括最大连接数之类的,难道我通过spring获取dataSource这个bean以后产生的连接不在配置覆盖的有效范围内?
解决方案
建议你使用spring 的 DataSourceUtils里面有 public static Connection getConnection(DataSource dataSource) throws CannotGetJdbcConnectionException和 public static void doReleaseConnection(Connection con, DataSource dataSource) throws SQLException这两个是获得和关闭若是你直接使用spring的jdbc,因为它对jdbc进行了封装。例如jdbctemplate,这个是不需要手工关闭的。
解决方案二:
为什么不直接使用bean对象。直接获取connection 是需要手动关闭的
解决方案三:
直接用Jdbc Template就行了,声明式事务,不需要管数据库连接开闭问题。现在还用手工方式开闭数据库连接,太落后了
解决方案四:
需要手动关闭的
时间: 2024-07-29 18:41:12