When Spring catches an SQLException, does it close the prepared statement, result set, and/or connection before throwing it's own DataAccessException (runtime) exception?
I have a developer who wants to create an AOP aspect to catch these exceptions and log and/or close the connection.
@AfterThrowing(pointcut="dataAccessOperation()", throwing="exception")
public void doRecoveryActions(JoinPoint thisJoinPoint, DataAccessException exception) {
// log and/or close connection
}
Yes.
That's the whole point of JdbcTemplate
- it handles all kinds of boilerplate actions including release of all resources. See 12. Data access with JDBC.