|
|
(21 intermediate revisions by 3 users not shown) |
Line 1: |
Line 1: |
− | __NOTOC__
| |
− | = persistence.xml =
| |
− | A persistence unit configures various details that are required when you acquire an entity manager. You specify a persistence unit by name when you acquire an entity manager factory.
| |
| | | |
− | You configure persistence units in the JPA persistence descriptor file: '''persistence.xml'''. This file should be in the '''meta-inf/''' directory of your persistence unit jar file, or classpath.
| |
| | | |
− | In this file, you can specify the vendor extensions that this reference describes by using a '''<properties>''' element.
| |
| | | |
− | <source lang="xml">
| + | '''[[Image:Elug_draft_icon.png|Warning]] See "About the Persistence Unit" in the [http://www.eclipse.org/eclipselink/documentation/ EclipseLink Concepts Guide]''' |
− | <persistence-unit name="default" transaction-type="RESOURCE_LOCAL">
| + | |
− | <provider>org.eclipse.persistence.jpa.PersistenceProvider</provider>
| + | |
− | | + | |
− | <!-- By default your mappings can be defined in orm.xml file, -->
| + | |
− | <!-- which is discovered automatically. -->
| + | |
− | <mapping-file>META-INF/my-mappings.xml</mapping-file>
| + | |
− | ...
| + | |
− | <jar-file>my-additional-jar.jar</jar-file>
| + | |
− | ...
| + | |
− | <!-- Enables auto discovery of persistent classes, -->
| + | |
− | <!-- otherwise they must be listed using <class> -->
| + | |
− | <exclude-unlisted-classes>false</exclude-unlisted-classes>
| + | |
− | | + | |
− | <properties>
| + | |
− | ...
| + | |
− | </properties>
| + | |
− | </persistence-unit>
| + | |
− | </source>
| + | |
− | | + | |
− | | + | |
− | ==How to Specify the Persistence Unit Name==
| + | |
− | | + | |
− | If you are developing your application in a Java EE environment, ensure that the persistence unit name is unique within each module. For example, you can define only one persistence unit with the name '''EmployeeService''' in an '''emp_ejb.jar''' file. The following example shows how to define the name of the persistence unit:
| + | |
− | | + | |
− | <persistence-unit name="EmployeeService">
| + | |
− | {{Template:EclipseLink_Spec
| + | |
− | |section=Section 6.2.1 "persistence.xml file"
| + | |
− | }}
| + | |
− | | + | |
− | ==Additional Properties==
| + | |
− | Use these '''persistence.xml'' or persistence unit properties to further configure your JPA application.
| + | |
− | * '''javax.persistence.transactionType''' - Standard JPA PersistenceUnitTransactionType property: '''JTA''' or '''RESOURCE_LOCAL'''
| + | |
− | * '''javax.persistence.jtaDataSource''' - Standard JPA JTA DataSource name.
| + | |
− | * '''javax.persistence.nonJtaDataSource''' - Standard JPA non-JTA DataSource name.
| + | |
− | * '''javax.persistence.jdbc.driver''' - Standard JPA 2.0 JDBC driver class name for JSE deployments <br />In EclipseLink 1.1, this property was '''eclipselink.jdbc.driver'''.
| + | |
− | * '''javax.persistence.jdbc.url''' - Standard JPA 2.0 JDBC URL for JSE deployments<br />[[Image:Elug_note_icon.png]] In EclipseLink 1.1, this property was '''eclipselink.jdbc.url'''.
| + | |
− | * '''javax.persistence.jdbc.user''' - Standard JPA 2.0 database user for JSE deployments<br />[[Image:Elug_note_icon.png]] In EclipseLink 1.1, this property was '''eclipselink.jdbc.user'''.
| + | |
− | * '''javax.persistence.jdbc.password''' - Standard JPA 2.0 database password for JSE deployments<br />[[Image:Elug_note_icon.png]] In EclipseLink 1.1, this property was '''eclipselink.jdbc.password'''.
| + | |
− | | + | |
− | | + | |
− | {{EclipseLink_JPA
| + | |
− | |previous=[[EclipseLink/UserGuide/JPA/Basic JPA Development/Configuration|Configuration]]
| + | |
− | |next=[[EclipseLink/UserGuide/JPA/Basic_JPA_Development/Configuration/JPA/Annotations|Annotations]]
| + | |
− | |up=[[EclipseLink/UserGuide/JPA/Basic JPA Development/Configuration|Configuration]]
| + | |
− | |version=2.1.0
| + | |
− | }}
| + | |