码迷,mamicode.com
首页 > 系统相关 > 详细

【hibernate】与触发器一起运行

时间:2014-05-23 01:24:07      阅读:474      评论:0      收藏:0      [点我收藏+]

标签:a   strong   数据   问题   数据库   res   

触发器的事件

1、插入事件

2、更新事件

3、删除事件

数据库触发器经常用来生成审计日志,对重要数据的更新记录事件,这种记录审计日志的办法简便,有很好的性能,缺点是不支持跨数据库平台。

触发器引起的问题及解决方法

问题:
触发器执行的操作对Session来说是透明的,如果触发器修改了对象的属性,Session无法检测到数据库中数据的变化,因此Session不会自动刷新缓存中的对象。
解决办法:
执行完save方法后,例如User对象u1:
session.save(u1);
session.flush();
session.refresh(u1);
flush方法会清理缓存,立即执行由save方法计划的insert语句。
refresh方法重新从数据库中加载刚刚被保存的User对象,这样就使Session缓存与数据库保持同步了。

【hibernate】与触发器一起运行,布布扣,bubuko.com

【hibernate】与触发器一起运行

标签:a   strong   数据   问题   数据库   res   

原文地址:http://blog.csdn.net/guoer668/article/details/26560899

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!