是否可以在hibernate spring中从DataAccessException接收URL?

时间:2012-07-02 07:45:14

标签: java database spring hibernate exception

我使用spring hibernate框架并在catch中查询更新接收

DataAccessException

对于写错误日志我想收到数据库的URL,SQL错误等。是否可以从DataAccessException类型接收? 感谢。

2 个答案:

答案 0 :(得分:1)

DataAccessException并不总是带来SQLException。

您无法从异常中访问数据库信息。您可以从数据源中获取这些信息。

根据您的驱动程序,您可以将SQLException包装到DataAccessException中。但事情并非总是如此。

不要忘记Exception是问题的包装器。它不包含有关环境的信息。

答案 1 :(得分:1)

sources of DataAccessException,其中定义了所有方法,它只是Exception的包装器,因此没有什么可看的。考虑到它不是数据库可能抛出的唯一例外,你应该寻找其他例外,例如JDBCException

仍然可以检索您需要的东西:

  1. 通过ex.getMessage();
  2. 获取SQL错误
  3. Get database URL from Hibernate session
  4. Show real query SQL using Hibernate