我正在使用 Spring JDBC 3.0.6。我也有使用普通 JDBC 的遗留代码。遗留代码中有一些方法需要 java.sql.Connection 对象。我想从我的 Spring 代码中调用这个方法。如何传递 java.sql.Connection 对象?
如果我从数据源中获取连接对象,那么我需要管理此连接的返回/释放。我不能只获取事务中的连接对象的引用吗?
我正在使用基于注释的配置和基于 aop 的声明性事务。
我正在使用 Spring JDBC 3.0.6。我也有使用普通 JDBC 的遗留代码。遗留代码中有一些方法需要 java.sql.Connection 对象。我想从我的 Spring 代码中调用这个方法。如何传递 java.sql.Connection 对象?
如果我从数据源中获取连接对象,那么我需要管理此连接的返回/释放。我不能只获取事务中的连接对象的引用吗?
我正在使用基于注释的配置和基于 aop 的声明性事务。
使用JdbcTemplate.execute(ConnectionCallback)
. 连接回调将访问由 Spring 自动打开、关闭并与当前事务关联的连接。
使用DataSourceUtils.getConnection方法,这将检索与事务关联的连接。使用DataSourceUtils.releaseConnection释放它(如果连接是与 Transaction 关联的连接,则为 noop。
如果遗留代码具有打开/关闭连接的实用程序类 - 您只需修改它以使用 DataSourceUtils 函数。