我有一张桌子。该表中的记录被删除(假设为id 1)。如何使用hibernate插入具有相同ID的新记录? (现在我正在使用生成的类型auto)
是否有替代解决方案而不是为id创建getter和setter?
答案 0 :(得分:0)
通常,在SGBD中,您可以使用按需生成新唯一ID的序列 删除时,通常不关心重用已释放的插槽。如果您需要这样做,则必须通过保留一组可用的 ID来进行自定义开发。这意味着您需要从已删除的实体中回收ID并管理对它的并发访问以保持单一性。这个游泳池也必须坚持下去 所有这些都有成本,复杂性和性能。
如果你想实现一个自定义id生成器,有几个资源,比如this one,但你需要实现ids策略的循环,这当然更复杂,并且可能不容易在hibernate中挂钩有一个删除。