我在我的应用程序中使用 NamedParameterJdbcTemplate batchUpdate,使用 Mysql 作为数据库。当发生任何异常时,我通过 DataAccessException 捕获它,并且可以获得所有更新计数,但无法找出所有错误消息。相反,我得到了最后发生的唯一异常。 前任。我在批处理操作中遇到 10 种类型的异常。我只在异常堆栈中得到最后一个异常。 如何正确获取所有数据库异常/错误消息?
想要在异常堆栈中正确获取所有错误消息。
要在 Spring 中使用
batchUpdate
捕获NamedParameterJdbcTemplate
期间的错误消息,您可以使用 try-catch
块来处理 DataAccessException
,这是因数据库相关问题而引发的。在 catch
块中,记录异常消息和堆栈跟踪以捕获错误。如果要捕获批次中各个项目的错误,请迭代数据列表并在单独的 try-catch 块中执行各个更新。这确保了如果某些记录失败,您可以记录特定的错误消息,同时仍然处理剩余的记录。