EclipseLink/Examples/JPA/Configure

From Eclipsepedia

Jump to: navigation, search


To use JPA you will need to have the following configured:

  • persistence.xml - which defines your persistence units and should be in the meta-inf/ directory of your persistence unit jar file, or classpath.
<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>


  • Entity, Embeddable and MappedSuperclass
    • These classes should be decorated with the necessary annotations, and/or
    • Be defined in the orm.xml (or some other mapping file) using the XML descriptors.


  • 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 (was "eclipselink.jdbc.driver" in EclipseLink 1.1).
    • "javax.persistence.jdbc.url" - Standard JPA 2.0 JDBC URL for JSE deployments (was "eclipselink.jdbc.url" in EclipseLink 1.1).
    • "javax.persistence.jdbc.user" - Standard JPA 2.0 database user for JSE deployments (was "eclipselink.jdbc.user" in EclipseLink 1.1).
    • "javax.persistence.jdbc.password" - Standard JPA 2.0 database password for JSE deployments (was "eclipselink.jdbc.password" in EclipseLink 1.1).


See Developing JPA Projects in the EclipseLinkUser's Guide for details.