gpt4 book ai didi

java - 具有关系的 EJB 实体 bean 的深度复制

转载 作者:行者123 更新时间:2023-11-29 06:19:13 24 4
gpt4 key购买 nike

我拥有的是一个实体 bean,例如Entity (EJB 3) 在 ArrayList<Entity> 中保留相同类型的 child , 他的 parent <Entity>以及与另一个实体的关系 <Users> .用户可以拥有许多实体,反之亦然(多对多)。

我想做的是覆盖 Entity.clone() (或有新方法)深拷贝 Entity以及 children 的克隆, 属于同一个父级并被分配给已经存在的用户。

我已经设置了克隆方法来创建 Entity 的克隆(一个新实体),然后用 children 的克隆填充它foreach 循环中的实体。

但这给了我一个并发修改异常,我最终得到的只是初始 Entity 的一个克隆。没有它的 bean children .

我的问题是:

我想做的事情是否可行,或者我应该管理深度复制,例如门面?如果可行,您能否指导我阅读一些东西或给我一些提示,因为到目前为止,我是通过外观进行克隆的,这已成为我应用程序的主要负担。

提前致谢!!

紫罗兰

最佳答案

尝试使用(来自 commons-lang )

YourEntity clone = SerializationUtils.clone(entity);

您必须使您的实体Serializable(尽管您可能不一定想要)。此外,这应该在 EntityManager 仍处于打开状态时完成,否则您会遇到延迟初始化异常。

关于java - 具有关系的 EJB 实体 bean 的深度复制,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3822317/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com