Правильный подход к работе с межмодульными зависимостями сущностей jpa - PullRequest
0 голосов
/ 09 апреля 2019

При программировании микросервисов я ищу правильный подход для решения межмодульных зависимостей сущностей jpa. Пожалуйста, рассмотрите следующий класс сущности:

@Entity
@Table(name = "irrelevant_table")
private class SomeEntity implements Serializable {

    @Id
    @GeneratedValue
    @Column(name = "some_entity_id")
    private Long id;

    // remainder omitted for brevity
}

Теперь, когда вы ссылаетесь на объект в другом mircoservice, вы

  • импортировать класс сущности, который должен быть включен в API, и ссылаться на него или
  • а точнее ссылаться на сущность только по ее идентификатору и держать скрытый класс сущности?

Следующий класс сущностей находится в другом mircoservice и имеет только API первого в качестве зависимости.

@Entity
@Table(name = "other_irrelevant_table")
private class SomeOtherEntity implements Serializable {

    @Id
    @GeneratedValue
    @Column(name = "some_entity_id")
    private Long id;

    private SomeEntity entity;  // appraoch 1

    private Long someEntityId;  // appraoch 2

    // remainder omitted for brevity
}

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

...