我正在使用SimpleJdbcTemplate
连接到数据库。我在哪里可以找到所有异常以及它们何时被抛出?我只知道几个,例如:
org.springframework.jdbc.BadSqlGrammarException
当 SQL 查询语法错误时发生。但我需要了解更多,例如当数据库无法访问或存在锁定等时会引发什么异常。
看一下SimpleJdbcTempate
. 我发现这个例外:
它有这些已知的子类:
NonTransientDataAccessException
与子类:
CleanupFailureDataAccessException
DataIntegrityViolationException
DataRetrievalFailureException
DataSourceLookupFailureException
InvalidDataAccessApiUsageException
InvalidDataAccessResourceUsageException
NonTransientDataAccessResourceException
PermissionDeniedDataAccessException
UncategorizedDataAccessException
RecoverableDataAccessException
TransientDataAccessException
与子类:
ConcurrencyFailureException
QueryTimeoutException
TransientDataAccessResourceException
也阅读Spring 指南中的文档。JdbcTemplate
参考 Spring API
http://static.springsource.org/spring/docs/3.0.x/javadoc-api/
几个例外列表...
BadSqlGrammarException
CannotGetJdbcConnectionException
IncorrectResultSetColumnCountException
InvalidResultSetAccessException
JdbcUpdateAffectedIncorrectNumberOfRowsException
LobRetrievalFailureException
SQLWarningException
UncategorizedSQLException
您将在该框架的 JavaDoc 中找到这些详细信息。这是 3.0.x 文档。如果你查看 org.springframework.jdbc 包,你会发现列出了几个例外。
通常,您正在寻找DataAccessException
从: 和 RecoverableDataAccessException 开始TransientDataAccessException
的NonTransientDataAccessException
所有子类。继续寻找子类。
有很多这样的异常,您必须阅读 JavaDocs 以了解它们何时被抛出。Spring 在将特定于数据库的异常转换为标准层次结构方面做得很好。