2015-01-12 23 views
9

Tôi muốn tham chiếu đối tượng lồng nhau tồn tại trong đối tượng Bộ sưu tập khác, trong đối tượng Sự kiện của tôi để khi tôi nhận được Sự kiện người dùng hơn Địa điểm của sự kiện sẽ truy xuất với nó, tôi mới ở Mongodb và mùa xuân bất kỳ ai có thể giúp đỡ để làm điều này.Làm thế nào để tham chiếu đối tượng lồng nhau vào bộ sưu tập khác Mongodb

class User{ 
private String name; 
private Venue venue; 

//Getter and Setter 
} 

class Event { 
@DBRef 
private Venue venue; 

//Getter and Setter 
} 
+1

Bạn có thể cung cấp thêm chi tiết về câu hỏi của mình không? Có lẽ bạn có thể đọc lại câu hỏi của mình để kiểm tra xem bạn có đặt mọi từ vào vị trí của nó hay không. Thật khó cho tôi hiểu. Tôi có thể thấy lớp User và lớp Event. Họ có liên quan với nhau như thê nào? – innoSPG

+0

Tôi đã vấp phải cùng một vấn đề - có một đối tượng lồng nhau (Địa điểm) với ObjectId riêng của nó và sau đó DBreferencing nó từ một đối tượng (Sự kiện). Về cơ bản, nhét xuống để tham chiếu một đối tượng lồng nhau chứ không phải một đối tượng từ một bộ sưu tập cấp cao nhất. –

Trả lời

2

Nếu mỗi người dùng có một Địa điểm, bạn có thể tham chiếu Người dùng thay vì Địa điểm trong sự kiện. Nếu Người dùng có thể có nhiều Địa điểm, bạn nên đặt Địa điểm thành bộ sưu tập riêng biệt và tham chiếu cả trong Người dùng và Sự kiện.

0

Hãy thử điều này.

class Venue{ 
    //Getter and Setter 
} 

class User{ 
    private String name; 
    @DBRef 
    private Venue venue; 

    //Getter and Setter 
} 

class Event { 
    @DBRef 
    private Venue venue; 

    //Getter and Setter 
} 
Các vấn đề liên quan