JPA: как использовать разные базы данных с отношениями между ними - PullRequest
4 голосов
/ 09 ноября 2011

В одной установке базы данных Mysql я могу создавать разные базы данных с межбазы данных. Моя цель, например, использовать отношения между людьми в базе данных A и адресами в базе данных B. Похоже, что EclipseLink недавно добавил поддержку для таких случаев Составной блок персистентности

К сожалению, более исчерпывающие примеры трудно найти, и, прежде всего, модуль сохранения составных данных объединяет файлы persistence.xml из разных jar-файлов. В проекте, над которым я сейчас работаю, у меня нет классов и сущностей, разделенных на разные банки в зависимости от базы данных, на которую они ссылаются. Честно говоря, просматривая документацию по Eclipselink, я не могу понять, какие реальные усилия сделать код совместимым с требованиями, предъявляемыми модулем постоянного хранения Composite. Есть ли у вас опыт с этим? Есть ли альтернативные способы?

Спасибо Filippo

1 Ответ

3 голосов
/ 09 ноября 2011

Являетесь ли вы базами данных разных баз данных или просто разными схемами в одной и той же базе данных?

Если это просто разные схемы, вам не нужны составные единицы постоянства, просто установите схему в @ Table.

Для разных баз данных вы можете использовать составные единицы сохраняемости, документация здесь:

http://wiki.eclipse.org/EclipseLink/UserGuide/JPA/Advanced_JPA_Development/Composite_Persistence_Units

Вам не нужно иметь все классы единиц постоянства вjars (хотя это самый простой способ сделать это. Вы можете просто иметь все классы в корневом jar и перечислить классы в файле persistence.xml, а также иметь составной файл persistence.xml в составных jar.

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