gpt4 book ai didi

java - 添加到@ManyToOne 时更新父引用

转载 作者:塔克拉玛干 更新时间:2023-11-02 19:15:02 25 4
gpt4 key购买 nike

<分区>

让我们假设一个简单的 1 Father -> n Children 实体关系(getters/setters 省略):

@Entity
public class Father {

@Id
@GeneratedValue
private Integer id;

@OneToMany(mappedBy="father", cascade=CascadeType.ALL)
private List<Child> children = new ArrayList<>();

...
}

@Entity
public class Child {
@Id
@GeneratedValue
private Integer id;

@ManyToOne(cascade=CascadeType.ALL)
private Father father;

...
}

现在尝试通过简单地将 child 添加到父亲来更新该关系时,它不起作用,因为 Child.father 没有得到更新:

Child child = new Child();
// optionally persist child first, tried
father.getChildren().add(child);
...save father

我尝试使用不同的 CascadeType,但似乎无法自动更新 Child.father 引用。我知道传统的方法是使用“addChild”方法,但我想知道是否有自动方法来这样做?

我的配置是Spring Boot + JPA (Hibernate) + H2,自动创建到数据库。有趣的是,我发现一些博客帖子似乎与我在这里所做的完全一样,但对他们来说它有效,但对我来说无效。奇怪。

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