Hibernate 中的更新前和更新后
我想在我的应用程序中使用更新前和更新后概念。
目的是我想获取正在更新的特定记录的所有值,并将这些值作为记录与新值一起插入名为审计的表中。
任何人都可以对此提出一些建议或指示吗?
谢谢,
纳伦德拉
I want to use preupdate and postupdate concepts in my application.
The purpose is i want to get all values of a particulra record which is being updated and insert these values as a record along with new values in a table named audit.
Can any one give some suggestions or pointers on this.
Thanks,
Narendra
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
有两种方法可以实现此目的:
Hibernate 拦截器。请参阅http://docs.jboss.org/ hibernate/core/3.6/reference/en-US/html/events.html
数据库级触发器/存储过程。
如果前/后功能与业务逻辑相关,即您的应用程序将根据更新采取行动,则您使用第一个。
如果您只进行数据级别更改并且应用程序不需要了解它,则可以使用第二个。
There are 2 ways to achieve this:
Hibernate Interceptors. See http://docs.jboss.org/hibernate/core/3.6/reference/en-US/html/events.html
Database level triggers/stored procedures.
You use the first if the pre/post functionality is business logic related -- i.e. your application is going to act on the update.
You use the second if you are only doing data level changes and the application doesn't need to know about it.
0 您可以使用 HibernateInterceptors
1 您可以在服务层以编程方式执行此操作
2 您可以通过数据库来实现此操作
TRIGGERS
那么你的数据库将处理这个问题。0 You can use HibernateInterceptors
1 You can do it programatically at service layer
2 You can either implement this things by database
TRIGGERS
then your DB will handle this.您应该看看 Hibernate Envers。它为您进行审核。
http://docs.jboss.org/envers/docs/index.html
You should have a look to Hibernate Envers. It does the Audit for you.
http://docs.jboss.org/envers/docs/index.html