Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/spring/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Database 如何使用Hibernate和Spring记录数据库错误_Database_Spring_Hibernate_Interceptor_Error Logging - Fatal编程技术网

Database 如何使用Hibernate和Spring记录数据库错误

Database 如何使用Hibernate和Spring记录数据库错误,database,spring,hibernate,interceptor,error-logging,Database,Spring,Hibernate,Interceptor,Error Logging,因此,我们的应用程序有10000个不同的DAO类,使用多个会话工厂和数据源。数据源使用c3p0进行连接池,我们使用hibernate框架与oracle数据库对话 现在,当我们遇到数据库错误时,例如如果服务器关闭,达到最大连接尝试次数等。。。我们希望使用我们自己的日志机制来记录它们基本上执行xxx.fatal(“数据库服务器关闭”,e) 问题1:如何捕获这些异常?(数据库服务器关闭,达到最大连接尝试次数等…) 问题2:如何通过最少的代码更改来登录?我可以为此使用hibernate拦截器吗 请告知

因此,我们的应用程序有10000个不同的DAO类,使用多个会话工厂和数据源。数据源使用c3p0进行连接池,我们使用hibernate框架oracle数据库对话

现在,当我们遇到数据库错误时,例如如果服务器关闭,达到最大连接尝试次数等。。。我们希望使用我们自己的日志机制来记录它们基本上执行xxx.fatal(“数据库服务器关闭”,e)

问题1:如何捕获这些异常?(数据库服务器关闭,达到最大连接尝试次数等…)

问题2:如何通过最少的代码更改来登录?我可以为此使用hibernate拦截器吗

请告知


谢谢

使用Spring AOP并在后面创建一个
建议来捕获异常并记录它们。请看一个例子。

谢谢您的回复。我开始实现这种方法,但不断出现错误org.springframework.aop.framework.AopConfigException:无法生成类的CGLIB子类完整错误是无法生成类的CGLIB子类[类org.springframework.security.config.method.GlobalMethodSecurityBeanDefinitionParser$AuthenticationManagerDelegator]:此问题的常见原因包括使用final类或不可见类;嵌套异常为java.lang.IllegalArgumentException:无法为final类org.springframework.security.config.method.GlobalMethodSecurityBeanDefinitionParser$AuthenticationManagerDelegateTorth创建子类。如果您是我们使用CGLIB作为代理提供程序,您需要在配置中启用它。我想这就是问题所在(但不确定);)我的切入点使用了所有的公共方法,inturn使用了一个来自jar的方法,但失败了。一旦我更改了切入点,我就再也看不到错误了。但是,我无法控制我定义的方面。我将在一个不同的问题中发布它。谢谢,我在在这里分开