休眠:插入一个具有相同ID的已删除行

时间:2012-08-14 15:54:07

标签: java hibernate

我的使用案例

  1. 我的Hibernate配置使用自动增量生成器进行插入,我不想更改它。
  2. 用户删除了ID为10的对象,并将此删除的对象保存到某处。
  3. 稍后,用户决定使用相同的ID恢复此已删除的对象:10。
  4. 由于这个ID为10的对象已从数据库中删除,我如何使用Hibernate将其插入数据库,而hibernate配置使用自动增量生成器(请记住:我需要在数据库中为此对象保留相同的ID )?
  5. 谢谢,

    亚历

2 个答案:

答案 0 :(得分:1)

我怀疑如果不更改发生器,Hibernate会让你这样做。那么插入它然后用直接SQL更新它并使任何hibernate缓存失效呢?

答案 1 :(得分:0)

我怀疑Hibernate不会允许你这样做。但是你可以去编写sql查询来更新表[如果你已经使用了表生成器]来改变当前可以使用的索引位置,但它将是复杂的逻辑,因为你总是要跟踪哪个索引记录不是本