java - 如果抛出异常,Spring 的 JdbcTemplate 是否关闭连接?

标签 java spring exception-handling jdbctemplate

当 Spring 捕获 SQLException 时,它会在抛出自己的 DataAccessException(运行时)异常之前关闭准备好的语句、结果集和/或连接吗?

我有一个开发人员想要创建一个 AOP 方面来捕获这些异常并记录和/或关闭连接。

@AfterThrowing(pointcut="dataAccessOperation()", throwing="exception")
public void doRecoveryActions(JoinPoint thisJoinPoint, DataAccessException exception) {
     // log and/or close connection
}

最佳答案

是的。

这就是 JdbcTemplate 的全部要点 - 它处理各种样板操作,包括所有资源的释放。参见 12. Data access with JDBC .

关于java - 如果抛出异常,Spring 的 JdbcTemplate 是否关闭连接?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5096899/

相关文章:

c - 在 C 中有效使用 goto 进行错误管理?

python-2.7 - 缩短用于Python异常处理的表达式

java - 从 sshj 启动时,来自控制台的命令不运行

java - 具有 SqlResultSetMapping 和 native 查询的 JPA 数据存储库

c# - 在 c# om nom nom 中吃异常

java - 在服务器停止之前运行 Java 代码

java - 为什么rabbitmq fanout Exchange只能收到一个订阅消息?

java - Maven 中的嵌入式内存数据库

java - 将图像(字节数组)写入hdfs

java - Android Studio Firebase 查询。我只想显示具有相同uid的学生和 child