gpt4 book ai didi

java - @ManyToMany 和更新实体

转载 作者:太空宇宙 更新时间:2023-11-04 11:32:54 26 4
gpt4 key购买 nike

我有 User 类,它有一些附加属性:

@Entity
@Table(name="\"user\"")
public class User implements UserDetails {
private String username;
private String password;
@ManyToMany(fetch = FetchType.EAGER)
private Collection<House> houses;
}

现在,如果我调用某种方法来更改其中一栋房屋(例如更改其名称属性),那么如果我调用:

User user = (User) SecurityContextHolder.getContext().getAuthentication().getPrincipal();
user.getHouses(); <- value of name property in house is not updated

如何确保它始终更新?

最佳答案

我建议您将 @ManyToMany(fetch = FetchType.EAGER) 更改为 @ManyToMany(fetch = FetchType.LAZY)。因为 EAGER 会在您第一次调用它时立即获取对象,而使用 LAZY 则您拥有 id,并且您将按需获取,这意味着,使用惰性,您将从数据库中获取对象的最后状态。

关于java - @ManyToMany 和更新实体,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43605080/

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