【发布时间】:2015-10-24 14:41:41
【问题描述】:
我有一个简单的用户实体,并希望与其他用户实现多对多关系。该类如下所示:
@Entity
public class User {
@Id
@GeneratedValue
private long id;
private String username;
@ManyToMany
private List<User> friends;
public long getId() {
return id;
}
public void setId(long id) {
this.id = id;
}
public String getUsername() {
return username;
}
public void setUsername(String username) {
this.username = username;
}
public List<User> getFriends() {
return friends;
}
public void setFriends(List<User> friends) {
this.friends = friends;
}
public void addFriend(User user){
if (friends==null) friends = new ArrayList<User>();
friends.add(user);
}
}
但是,这并不符合我的要求,因为我希望数据库中只有一行用于双向关系,在这种情况下,它会在两个方向上产生两行。
我怎样才能做到这一点?
【问题讨论】:
标签: java database hibernate jakarta-ee entity