java - 从 Spring jdbc 获取 java.sql.connection : getJdbcTemplate()

标签 java sql spring connection jdbctemplate

在我的应用程序中,我们试图从 Spring 获取 java.sql.Connection,

连接 conn = DataSourceUtils.getConnection(this.getJdbcTemplate().getDataSource());

我使用此连接对象来设置准备语句并执行查询以获取结果集。

我知道这样一个概念,当我们使用jdbcTemplate时,打开连接、关闭连接等的负担由spring本身承担,我们不需要在代码中显式处理。

但是在这种情况下我有点困惑,因为我们从 jdbcTemplate 显式获取连接对象,所以我们是否还需要在代码中显式处理连接关闭?我们正在使用连接池。

提前致谢。

蓝光

最佳答案

这取决于您配置的数据源类型(在您的情况下,它是配置了连接池的数据源),因此 DatasourceUtils getConnection 使用相同的数据源,因此您创建的 Connection 对象将被池化,这意味着如果您调用 close在此连接对象上,连接实际上不会关闭,而是会返回到连接池

关于java - 从 Spring jdbc 获取 java.sql.connection : getJdbcTemplate(),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25328155/

相关文章:

sql - 最大计数 - PostgreSQL

python - PostgreSQL 日期时间类型的最佳数据类型

java - 在 tomcat 上部署 grails 应用程序时创建名称为 'transactionManagerPostProcessor' 的 bean 时出错

java - Google map 最后的好 map 位置

java - 为什么我的实体管理器返回空结果列表?

java - SSLContextImpl 未初始化

java - Hibernate 条件查询抛出异常

javascript - Ajax javascript 映射到 Spring Controller

java - 如何验证 pojo 集合

java - 如果用户在java中关闭浏览器,如何清除httpsession