2015-01-12 5 views
9

Я хочу, чтобы ссылка на вложенный объект существовала в другом объекте Collection, в моем объекте Event, так что, когда я получаю событие пользователя, чем место проведения события, оно будет извлекаться вместе с ним, я новичок в mongodb и весна может помочь кому-то.Как ссылаться на вложенный объект в другую коллекцию Mongodb

class User{ 
private String name; 
private Venue venue; 

//Getter and Setter 
} 

class Event { 
@DBRef 
private Venue venue; 

//Getter and Setter 
} 
+1

Не могли бы вы дать более подробную информацию о вашем вопросе? Возможно, вы можете перечитать свой вопрос, чтобы проверить, помещаете ли вы каждое слово на свое место. Мне трудно понять. Я вижу класс User и класс Event. Как они связаны? – innoSPG

+0

Я наткнулся на ту же проблему - имея вложенный объект (Venue) со своим собственным ObjectId, а затем DB, обращаясь к нему с другого объекта (Event). В основном сводится к привязке вложенного объекта, а не к коллекции верхнего уровня. –

ответ

2

Если у каждого пользователя есть одно Место проведения, вы можете ссылаться на пользователя вместо места проведения в Событии. Если у Пользователя может быть более одного места, вы должны сделать отдельную коллекцию Venues и ссылаться как на пользователя, так и на событие.

0

Попробуйте это.

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 
} 
Смежные вопросы