Файлы данного типа являются стандартными для JPA и используются для регистрации персистентных сущностей и задания параметров функционирования фреймворка ORM.
Набор файлов persistence.xml
, включая определенные в базовых проектах, задается в свойстве приложения
cuba.persistenceConfig
.
На старте блока Middleware из заданных файлов собирается один persistence.xml
и сохраняется в рабочем каталоге приложения. Параметры ORM могут переопределяться каждым следующим файлом списка, поэтому порядок указания файлов важен. Существует
несколько параметров, жестко определяемых типом используемой СУБД (заданным в
cuba.dbmsType
), которые невозможно переопределить в persistence.xml
, это:
-
openjpa.jdbc.DBDictionary
-
openjpa.jdbc.MappingDefaults
Кроме того, при выключенном свойстве приложения
cuba.disableOrmXmlGeneration
и наличии расширенных сущностей на старте приложения в рабочем каталоге создается файл orm.xml
и путь к нему записывается в параметр openjpa.MetaDataFactory
. В этом случае параметр openjpa.MetaDataFactory
также нельзя задать в persistence.xml
заранее.
Пример файла:
<persistence xmlns="http://java.sun.com/xml/ns/persistence" version="1.0"> <persistence-unit name="sales" transaction-type="RESOURCE_LOCAL"> <class>com.sample.sales.entity.Customer</class> <class>com.sample.sales.entity.Order</class> </persistence-unit> </persistence>