Skip to main content
Jump to: navigation, search

EclipseLink/UserGuide/JPA/Basic JPA Development/Configuration/JPA/persistence.xml

< EclipseLink‎ | UserGuide‎ | JPA‎ | Basic JPA Development‎ | Configuration
Revision as of 11:21, 15 June 2010 by (Talk | contribs) (Additional Properties)


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.

<persistence-unit name="default" transaction-type="RESOURCE_LOCAL">
  <!-- By default your mappings can be defined in orm.xml file, -->
  <!-- which is discovered automatically.                       -->                                     
  <!-- Enables auto discovery of persistent classes, -->
  <!-- otherwise they must be listed using <class>  -->

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">

For more information, see Section "name" of the JPA Specification.

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
    In EclipseLink 1.1, this property was eclipselink.jdbc.driver.
  • javax.persistence.jdbc.url - Standard JPA 2.0 JDBC URL for JSE deployments
    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
    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
    Elug note icon.png In EclipseLink 1.1, this property was eclipselink.jdbc.password.

Version: DRAFT
Other versions...

Back to the top