JavaJEEJPA: Difference between revisions

From Wiki RB4
Line 18: Line 18:


==javax.persistence.PersistenceContext==
==javax.persistence.PersistenceContext==
// injection via
  @javax.persistence.PersistenceContext
  @javax.persistence.PersistenceContext
  private javax.persistence.EntityManager em;
  private javax.persistence.EntityManager em;

Revision as of 21:30, 22 August 2008

Introduction

The Java Persistence API is part of the Java SE. To search for entities there is JPQL. The API defines the interface and is no persistence provider. This is for example JBoss or Glassfish. The information regarding persistence is specified via annotations or deployment descriptor. The central instance of the JPA is the entity manager. The entity manager is responsible for saving, actualizing or deleting of entities. The entity manager provides a persistence context. An entity in a persistence context is attached or managed, otherwise detached. It can also reattached. The entity manager is accessed via JNDI or in an EJB container by injection (javax.persistence.PeristenceContext). A persistence unit is the group of classes which is managed by one entity manager and references one database. A persistence unit is defined in peristence.xm.

Annotations

javax.persistence.Column

javax.persistence.Column[([name="<Name>"])]

javax.persistence.Entity

  • if no table specified, tablename is classname
  • all members are persistent, unless speficied with javax.persistence.Transient

java.persistence.GeneratedValue

javax.persistence.Id

javax.persistence.PersistenceContext

// injection via
@javax.persistence.PersistenceContext
private javax.persistence.EntityManager em;

javax.persistance.Table

javax.persitance.Table[([name="<Name>"])]