您的位置:首页 > 其它

JPA 注解 OneToMany和ManyToOne

2015-07-27 16:43 393 查看
本例涉及的表(ym_user)一的一方,表(ym_sub_user)多的一方,在写代码时,需要建立表,并建立ym_sub_user中设置外键关联ym_user。表的字段如下:
ym_user(id,name)
ym_sub_user(id,user_id,subname)


其中user_id是外键关联表ym_user

两个体类的代码如下:

@Entity
@Table(name = "YM_USER")
public class User {

@Id
@GeneratedValue(strategy = GenerationType.AUTO)
private int id;

@Column(name = "name")
private String name;

@OneToMany(mappedBy="user",fetch=FetchType.EAGER)
private Set<SubName> subNameList = new HashSet<SubName>();

public int getId() {
return id;
}

public void setId(int id) {
this.id = id;
}

public String getName() {
return name;
}

public void setName(String name) {
this.name = name;
}

public Set<SubName> getSubNameList() {
return subNameList;
}

public void setSubNameList(Set<SubName> subNameList) {
this.subNameList = subNameList;
}

}


@Entity
@Table(name = "ym_sub_user")
public class SubName {
@Id
private int id;

@Column(name = "sub_name")
private String subName;

@ManyToOne(targetEntity = User.class)
@JoinColumn(name="user_id")
private User user;

public int getId() {
return id;
}

public void setId(int id) {
this.id = id;
}

public String getSubName() {
return subName;
}

public void setSubName(String subName) {
this.subName = subName;
}

}


这样就完成了一对多和多对一的注解
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: