Spring boot и angular 5 веб-приложений

Я делаю простое приложение CRUD, используя Spring boot и MongoDB, проблема, с которой я сталкиваюсь, заключается в том, что я не знаю, как определять классы модели.

Мое приложение должно быть таким:

Сайт имеет некоторые характеристики, такие как идентификатор, регион, город и т. д., И состоит из 4 частей (ячеек), каждая из которых имеет свои характеристики. Любая помощь будет оценена по достоинству.

Вот что у меня есть на данный момент:

public class Site {

    @Id
    String siteId;
    String projectPhase;
    String region;
    String city;
    String siteName;
    String newSiteName;
    String clusterName ;
    String longitude ;
    String lattitude ;

    @OneToMany(mappedBy = "siteId")
    List  L;

Я хочу знать, как мне связать другой класс внутри этого.

Вопрос, похоже, касается ORM / JPA (используется Spring Boot), а не машинописного текста, монго или angular5. Также неясно, что вы пробовали и с каким еще классом хотите ассоциировать. Предоставьте более подробную информацию о вашей конкретной проблеме; поскольку вопрос стоит, на него нельзя ответить.

tucuxi 17.04.2018 10:23
Пользовательский скаляр GraphQL
Пользовательский скаляр GraphQL
Листовые узлы системы типов GraphQL называются скалярами. Достигнув скалярного типа, невозможно спуститься дальше по иерархии типов. Скалярный тип...
Как вычислять биты и понимать побитовые операторы в Java - объяснение с примерами
Как вычислять биты и понимать побитовые операторы в Java - объяснение с примерами
В компьютерном программировании биты играют важнейшую роль в представлении и манипулировании данными на двоичном уровне. Побитовые операции...
Поднятие тревоги для долго выполняющихся методов в Spring Boot
Поднятие тревоги для долго выполняющихся методов в Spring Boot
Приходилось ли вам сталкиваться с требованиями, в которых вас могли попросить поднять тревогу или выдать ошибку, когда метод Java занимает больше...
Полный курс Java для разработчиков веб-сайтов и приложений
Полный курс Java для разработчиков веб-сайтов и приложений
Получите сертификат Java Web и Application Developer, используя наш курс.
5
1
113
1

Ответы 1

Аннотации, такие как @OneToMany, обычно используются в контексте JPA и не нужны при использовании Spring Data MongoDB. Об этом также упоминает документация:

There’s no need to use something like @OneToMany because the mapping framework sees that you want a one-to-many relationship because there is a List of objects.

У вас есть несколько вариантов, когда вы хотите определить отношения «один ко многим» при использовании MongoDB. Первый из них - определить их как встроенные объекты в одном документе:

@Document
public class Site {
     @Id
     private String id;
     private String city;
     private String region;
     private List<Part> cellulars;
}

public class Part {
    private String characteristic1;
    private String characteristic2;
}

Это означает, что части не существуют сами по себе, поэтому им также не нужен собственный идентификатор.

Другая возможность - ссылка на другой документ:

@Document
public class Site {
     @Id
     private String id;
     private String city;
     private String region;
     @DBRef
     private List<Part> cellulars;
}

@Document
public class Part {
    @Id
    private String id;
    private String characteristic1;
    private String characteristic2;
}

В этом случае части также являются отдельными документами, а сайт просто содержит ссылку на часть.

Большое спасибо за ваш ответ, это очень полезно.

Achref Bannouri 17.04.2018 11:56

Другие вопросы по теме