当前位置: 代码迷 >> J2EE >> ssh2框架利用spring的AOP和hibernate的拦截器做日志解决思路
  详细解决方案

ssh2框架利用spring的AOP和hibernate的拦截器做日志解决思路

热度:11   发布时间:2016-04-17 23:21:34.0
ssh2框架利用spring的AOP和hibernate的拦截器做日志
要求日志记录删除、添加和修改前修改后的数据。
本来使用hibernate的拦截器去取到修改前与修改后的数据 ,然后利用spring aop取把该数据保存成日志。
最后因为拦截器与spring aop不能同步操作,也就是说他们执行的顺序不能确定,可能AOP先执行,hibernate拦截器后执行
导致在AOP里面取不到修改的数据。这个方式估计是走不通了。
我想请教下,如果要做成这样的日志记录还有其他好的思路么?
------解决思路----------------------
删除,就只有删除前的数据,除非删除失败。
添加,就只有添加后的数据,除非添加失败。
修改后的数据从形参中可以获取到(因为这就是你要修改成的样子)。修改前的数据就是通过getXXXById()取得的。可以同时对着2个进行日志拦截。getXXX拦截的就是修改前的,updateXXX的形参就是修改后的。日志中吧前后的ID都记录下来就行了。这样做最偷懒的方式。用spring的aop、就够了。
  相关解决方案