Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/hibernate/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Hibernate 休眠还原已删除的实体_Hibernate_Restore_Recycle Bin - Fatal编程技术网

Hibernate 休眠还原已删除的实体

Hibernate 休眠还原已删除的实体,hibernate,restore,recycle-bin,Hibernate,Restore,Recycle Bin,是否有第三方库添加恢复删除的实体功能?我需要像Hibernate envers这样的东西,它在运行时创建实体并将它们映射到表,但要简单得多!我只需要为每个实体创建两个表,这样当删除实体时,它将移动到另一个表。也许更简单的方法是永远不允许从表中删除任何内容。取而代之的是一个deleted INT(1)默认值0列,用于指定行是否已被删除。然后,只需清除deleted标志,即可轻松获取已删除的所有行/实体的列表,并取消删除所需的所有行/实体 这种方法的好处在于它是ORM不可知论的。你可以选择任何你想要

是否有第三方库添加恢复删除的实体功能?我需要像Hibernate envers这样的东西,它在运行时创建实体并将它们映射到表,但要简单得多!我只需要为每个实体创建两个表,这样当删除实体时,它将移动到另一个表。

也许更简单的方法是永远不允许从表中删除任何内容。取而代之的是一个
deleted INT(1)默认值0
列,用于指定行是否已被删除。然后,只需清除
deleted
标志,即可轻松获取已删除的所有行/实体的列表,并取消删除所需的所有行/实体


这种方法的好处在于它是ORM不可知论的。你可以选择任何你想要的,他们都会很好地发挥这种技术。缺点是,您必须执行一些手动操作才能实现取消删除功能。

这不是很有效,表中可能有1m个条目,但只有10个有效实体。另一个问题是当我想要删除实体时,db约束没有被检查。。。