MongoDB
 sql >> база данни >  >> NoSQL >> MongoDB

Spring данни и mongoDB - наследяване и @DBRef

Ето как трябва да изглеждат вашите класове, за да накарате DBRef да работи с наследяването.

Потребител

@Document(collection = "User")
public class User {

    @Id
    private String id;
    public String getId() {
        return id;
    }

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

    private String name;

    public String getName() {
        return name;
    }

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

}

Контакт

Моля, обърнете внимание, че не се нуждаете от анотация на документа за този клас.

public class Contact extends User {

    private String address;

    public String getAddress() {
        return address;
    }

    public void setAddress(String address) {
        this.address = address;
    }
}

Файл с документи

@Document(collection = "DocumentFile")
public class DocumentFile {

    @Id
    private String id;

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

    @DBRef
    private User user;

    public User getUser() {
        return user;
    }

    public void setUser(User user) {
        this.user = user;
    }

}

Ще ви трябва само IDocumentFileRepository и IUserRepository за CRUD операции.

Останалата част от кода заедно с тестовите случаи са качени в github.

https://github.com/saagar2000/Spring




  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Как да премахнете индекс с помощта на Mongoose

  2. множество оператори за актуализиране на mongo в едно изявление?

  3. Лимит =1 =1 ms, Лимит> 1 =150 ms (монго-мелт-даун)

  4. Как се инсталира MongoDb от Meteor?

  5. Мангуста | Мидълуер | Операции за връщане назад, извършвани от пре/след кукички, когато се изведе грешка