如果我只想保留已删除的实体,我可以使用Hibernate Envers吗?

时间:2012-09-03 07:15:59

标签: hibernate-envers

现在我们不删除实体,但在表中将标志设置为“非活动”(并将这些实体过滤掉以进行正常操作)。有人把我指向Hibernate Envers,但它看起来有点像矫枉过正。我的问题是:

  • 我们可以使用Envers来执行我们的机制(主动/非主动标志)吗?
  • 如果没有,Envers可以将已删除实体的副本存储在存档表中,但不进行任何版本控制/审核吗?
  • 这项任务是否有轻量级替代方案?

1 个答案:

答案 0 :(得分:1)

你可以在这里使用Envers,通过扩展审计监听器并忽略插入/更新事件,但我同意这是一种过度杀伤。

简单地使用带有专用DAO方法的活动标志或编写简单的Hibernate事件监听器应该更适合这项任务。