jar-file
你可以使用persistence.xml
<persistence>
<persistence-unit name="OrderManagement">
<description>This unit manages orders and customers.
It does not rely on any vendor-specific features and can
therefore be deployed to any persistence provider.
</description>
<jta-data-source>jdbc/MyOrderDB</jta-data-source>
<jar-file>MyOrderApp.jar</jar-file>
<class>com.widgets.Order</class>
<class>com.widgets.Customer</class>
</persistence-unit>
</persistence>
该文件定义了一个名为的持久性单元OrderManagement
,它使用JTA感知数据源jdbc/MyOrderDB
。所述jar-file
和class
元素指定管持久类:实体类,可嵌入类和超类映射。该jar-file
元素指定JAR文件都包含持久化类管理的打包持久单元可见,而该class元素明确命名持久化类管理。
对于Hibernate
,也可以进行设置和配置以获取更多详细信息。
编辑:实际上,如果你不介意不符合规范,Hibernate
即使在Java SE中也支持自动检测。为此,添加hibernate.archive.autodetection
属性:
<persistence-unit name="eventractor" transaction-type="RESOURCE_LOCAL">
<!-- This is required to be spec compliant, Hibernate however supports
auto-detection even in JSE.
<class>pl.michalmech.eventractor.domain.User</class>
<class>pl.michalmech.eventractor.domain.Address</class>
<class>pl.michalmech.eventractor.domain.City</class>
<class>pl.michalmech.eventractor.domain.Country</class>
-->
<properties>
<!-- Scan for annotated classes and Hibernate mapping XML files -->
<property name="hibernate.archive.autodetection" value="class, hbm"/>
<property name="hibernate.hbm2ddl.auto" value="validate" />
<property name="hibernate.show_sql" value="true" />
</properties>
</persistence-unit>