簡體   English   中英

單個實體的多對多關系-Hibernate

[英]Many-to-many relation of a single entity - Hibernate

我有一個簡單的User實體,並希望與另一個用戶實現ManyToMany關系。 該類如下所示:

@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);
    }
}

但是,這並不能滿足我的要求,因為我只想在數據庫中有一行用於雙向關系,在這種情況下,它在兩個方向上都做成兩行。

我該如何實現?

一個選項與join table一對多

只要確保正確更新參與該關聯的兩個用戶即可。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM