You are viewing an old version of this page. View the current version.

Compare with Current View Page History

Version 1 Next »

Overview

The persistence.xml file describes persistence units. It is the deployment descriptor file for persistence using Java Persistence API (JPA). It is used to declare the following.

  • Managed persistence classes.
    The managed classes are, for example, those which are annotated using @Entity, @Embeddable or
    @MappedSuperclass.
  • Specify object/relation mapping.
    JPA provides several mechanisms to map the java classes to tables in a relational database.
  • Configuration information for entity managers and entity manager factory classes.

The persistence.xml file is placed in the META-INF directory of the root of the persistence unit. The schema of the persistence.xml is at this link.

The object/relational mapping information is provided by the following ways.

  • Annotations on the managed persistence classes
  • One or more XML files contained in the root of the persistence unit
  • One or more XML files outside the root of the persistence unit on the classpath and referenced from the
    persistence.xml, or a combination of these.

In Java EE, the root of a persistence unit can be one of the following

  • EJB-JAR file
  • WEB-INF/classes directory of a WAR file
  • A jar file in the WEB-INF/lib directory of a WAR file
  • A jar file in the root of the EAR
  • A jar file in the EAR library directory
  • An application client jar file

The location of the managed persistence classes can be as follows.

  • Within the root of the persistence unit.
  • Can be specified by reference in the persistence.xml by naming the classes, archives, or mapping XML files
    that are accessible on the application classpath.
  • Some combinations of the above methods.
  • No labels