美好的一天,
我已经开始了我的第一个基于CRM应用程序的JPA项目,我在理解ManyToOne和OneToMany注释的正确用法方面遇到了一些困难。例如,我们说我有两个班级;这些将是帐户和用户类:
public class Account {
@OneToMany
private Set<User> userList = new HashSet<User>();
和
public class User {
@ManyToOne
private Account account;
如何正确注释多对一和一对多关系?我试过阅读文档,但我仍无法找到正确的结论。
感谢您的关注
答案 0 :(得分:0)
对于你的情况,一个'规范'的OneToMany映射,意思是双向的,在你的情况下,多边(自己的一面)表中的外键将如下所示:
public class Account {
@OneToMany(mappedBy="account")
private Set<User> userList = new HashSet<User>();
和
public class User {
@ManyToOne
private Account account;
现有代码的唯一区别是mappedBy
属性,用于将两个单向关系更改为单个双向关系。