Vai*_*esh 3 java orm hibernate
在持久对象中,如果我只更改一个字段,是否可以仅通过Hibernate找出更改的字段?我知道我可以得到整个旧行和新行并进行比较.
Pas*_*ent 7
根据你的一条评论,我的理解是你正在寻找一个审计解决方案,所以我建议检查Envers,这正是这个问题.
Envers项目旨在实现持久化类的简单审计/版本控制.您需要做的就是使用@Audited注释要审核的持久类或其某些属性.对于每个经审计的实体,将创建一个表,该表将保存对实体所做更改的历史记录.然后,您可以轻松地检索和查询历史数据.
ska*_*man 5
一种选择是挂钩Hibernate的事件系统(参见docs).例如,如果您注册接收FlushEntityEvent,则会通过getDirtyProperties事件的方法通知您哪些列正在更改.
FlushEntityEvent
getDirtyProperties
归档时间:
15 年,7 月 前
查看次数:
1664 次
最近记录:
15 年,5 月 前