Вопрос

Я пишу приложение, которое будет перемещать данные из одной базы данных в другую, используя API jpa entitymanager. Мои вопросы: 1. Могу ли я использовать несколько менеджеров сущностей в одной транзакции? 2. Могу ли я прочитать объект из одной базы данных и упорствовать в другой? Каковы проблемы, которые могут столкнуться?

Это было полезно?

Решение

Могу ли я использовать несколько менеджеров сущностей в одной транзакции?

Да, используя JTA. Я не уверен, что вам нужна глобальная транзакция в вашем случае, хотя. Вы действительно перемещаете или копируете сущности из одной БД на другую? В более позднем случае вы можете использовать две транзакции последовательно.

Могу ли я прочитать объект из одной базы данных и упорствовать в другой?

Предполагая, что у них такая же структура, и у вас нет никаких конфликтующих PK, должно быть возможно прочитать объект с использованием первого менеджера сущности, отсоединить его, а затем объединить его с использованием другого менеджера Entity. Если у вас есть возможные конфликты PK, вам придется использовать DIY подход (против простого сливания).

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top