好吧,我有点困惑,因为我找不到任何解决问题的方法(也许是某种停电)
假设我有以下(简化的)实体:
@Entity
public class Employee {
@Id
private long id;
@OneToMany(mappedBy="owner")
private Collection<Phone> phones;
}
@Entity
public class Phone {
@Id
private long id;
@ManyToOne
private Employee owner;
}
我有一个由 JPA 管理的电话对象。现在我想用类似的东西改变那个电话对象的员工:
phone.setEmployee(otherEmployee);
我认为 JPA 会更新相应的 Employee 也会更新。我错了吗?我尝试了注释 @ManyToOne 和 @OneToMany (cascade = CascadeType.ALL, orphanRemoval = true),但它不起作用。
我必须自己更新 Employee 对象吗?不幸的是,我在任何教程或其他示例中都没有找到这种情况,所以我希望你能告诉我更多,我很困惑。提前致谢。
编辑以使其更清晰:
Phone phone = new Phone();
Employee employee = new Employee();
phone.setEmployee(employee);
em.persist(employee);
em.persist(phone);
employee.getPhones(); //the phone object should be included here.