У меня есть модуль с persistence.xml для нескольких классов. У меня есть приложение, которое использует этот модуль, но хочет увеличить этот EntityManagerFactory несколькими другими классами, которые являются специфическими для этого приложения и не входят в модуль.Как создать экземпляр EntityManagerFactory, который добавляет persistence.xml с дополнительными классами?
Если я создаю файл persistence.xml в приложении, который переопределяет блок персистентности, он не работает надежно (он работает при запуске из отладчика IntelliJ, но не работает при вызове с использованием пакета maven appassemble), потому что кажется, что правила, определяющие, какие из файлов persistence.xml в различных банках вступают в силу, находятся вне моего понимания и, вероятно, трудно контролировать.
Если я создаю второй блок сохранения, содержащий только новые таблицы, тогда мне понадобится несколько EntityManagerFactory-s для извлечения различных типов объектов в JPA. В настоящее время мне не нужно выполнять запросы, которые объединяют объекты из библиотечного модуля с объектами, специфичными для модуля приложения, но я уверен, что было бы невозможно, если бы объекты находились в разных единицах сохранения.
Хуже того, использование нескольких единиц измерения продолжительности делает сербы сербами, потому что второй блок сохранения не работает, когда обнаруживает, что база данных уже открыта (с помощью первой единицы персистентности, почему дерби не может участвовать в одной JVM. я знаю, и могут быть обходные пути, которых я не знаю).
В чем опасность, если у вас есть единицы непрерывности, которые перекрываются? (обе единицы имеют объекты, сопоставленные с одной и той же таблицей в одной и той же базе данных)
Каковы правильные рекомендации по работе с единицами сохранения из нескольких .jars?
Может потребоваться некоторое время, чтобы выяснить, как реализовать eclipselink и интегрировать его с maven. –