java - Spring 的 JdbcTemplate 是否在查询超时后关闭连接?

标签 java database spring jdbc jdbctemplate

我在插入语句的方法中设置了查询超时 (getJdbcTemplate().setQueryTimeout(5))。查询超时后会发生什么,jdbc模板会关闭我的连接吗?

最佳答案

简而言之,它确实关闭了连接。长答案取决于。

当您没有 Spring 托管事务时,是的,JdbcTemplate 将调用 Connection 上的 close() 方法。但是,如果由于 Springs 事务管理关闭连接已经有可用的连接,则 Springs 事务支持将处理该连接,这反过来也会在 Connection 上调用 close() .

唯一的区别是连接关闭时会调用close()

连接是否真正关闭取决于使用哪个DataSource,一般情况下,当使用连接池时,连接将返回池中,而不是实际关闭连接。

关于java - Spring 的 JdbcTemplate 是否在查询超时后关闭连接?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20419785/

相关文章:

java - 无法使用网关 UI 将数据保存到 JHipster 微服务中

java - 如何捕获 new ClassPathXmlApplicationContext() 的 FileNotFoundException

java - 根据某个序列生成数字的公式

python - Twisted - 将factory.clients中的当前连接与唯一ID相匹配

ruby-on-rails - 使用集群扩展——最佳策略

php - 网络应用 : Data management for non-programmers

java - 用户无法注销 firebase android

java - 在 JTable 最后一行之后添加 JButton

java - 获取存储库中的所有文件夹和文档 Alfresco Restful

Spring 测试框架 - JNDI 资源