Использование Hibernate в модели клиент-сервер - PullRequest
1 голос
/ 02 апреля 2019

У меня проблемы с рассмотрением использования Hibernate в модели клиент-сервер.

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

Хотя при использовании FetchType.EAGER при отображении несложно передать объекты клиенту, как использовать FetchType.LAZY?

Пришло мое исследованиеза использование Hibernate Custom Proxys.Это правильный путь?

Например, в моей базе данных есть следующие две таблицы:

Таблица персон

| ID | FirstName | LastName    | ContactInformation |
|:---|:----------|------------:|:------------------:|
| 1  | Xavier    | Tester      | 1                  |

Таблица контактной информации

| ID | EMail                | phone           |
|:---|---------------------:|:---------------:|
| 1  | xavier.tester@tst.de | 123456          |

Предполагается, что эти таблицы сопоставлены с классом Person, с ContactInformation FetchType.LAZY.Клиент запрашивает Персона с ID=1 с сервера.Теперь сервер должен отправить объект клиенту, и клиент должен иметь возможность вызвать getContactInformation(), а сервер должен интерпретировать его с помощью LAZY Hibernate.

Как это возможно?

1 Ответ

0 голосов
/ 04 апреля 2019

Итак, я предложил два возможных решения:

  1. Отключение сущности на сервере и инициализация всех типов Lazy. При отправке с клиента на сервер сливайте его.
  2. Создание REST-API

На данный момент я собираюсь использовать решение № 2

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...