我有像
这样的关系<set name="someBeans" table="sometable" cascade="all, delete-orphan" inverse="true" lazy="true">
<key column="some_id" />
<one-to-many class="someBean" />
</set>
在我的Java代码中有一个对此执行的集合,就像
myClass.setSomeBeans(SomeBeans);
现在这个SomeBeans是一个linkedHashmap,因此维护了顺序,但是由于在级联中使用了所有删除孤立,我在特定情况下获得异常:
HibernateException – A collection with cascade=”all-delete-orphan” was no longer referenced by the owning entity instance
所以我将上面的java实现更改为
myClass.getSomeBeans().clear();
myClass.getSomeBeans().addAll(SomeBeans)
但是这样做我无法维持来自linkedHashMap SomeBeans的订单。
有没有人遇到过这样的问题,这方面的任何帮助都会受到关注
此致
Vaibhav的
答案 0 :(得分:0)
只是为了完成我想要创建的虚拟对象,从hibernate对象复制了属性并对其进行了排序,并对其进行了保留,并且所有删除孤立相关的问题也得到了解决。