gpt4 book ai didi

java - 如何将 child 添加到 hibernate 期间现有的 parent 保存中?

转载 作者:行者123 更新时间:2023-12-02 06:07:33 25 4
gpt4 key购买 nike

假设 Parent 已存在且 id=1。而且已经有2个 child 了。如何制作代码:

 Parent parent = parentDao.getbyId(1);
//here somebody added a collection of children
parent.setChildren(myNewCreatedChildren)
parentDao.save(parent);

如何保存父级以获取 parentDao.getbyId(1).getChildren() 返回 somebody Children + myNewCreatedChildren ?例如。调用 parentDao.save(parent) 应该添加子项,但覆盖。

注意

问题是关于在 doa 加载之后但在保存到数据库之前将子级添加到 java 代码之外(或者可能在其他线程中)到 parent 的情况。

最佳答案

我想应该是Collection<Children> children ,以及您的代码 parent.setChildren(myNewCreatedChildren)应替换为 parent.getChildren().addAll(children) ;

但根据我的经验,不处理 @ManyToOne(mappedBy="parent") 会更容易一些。并获取策略,提供childrenDao.fetchChildrensOfParent(parent)要容易得多和childrenDao.storeChildren(parent, children)方法并仅在需要时才使用这些方法,这样的结构更容易将缓存添加到应用程序中,并对其填充和驱逐提供更好的控制。

关于java - 如何将 child 添加到 hibernate 期间现有的 parent 保存中?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36760641/

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