Olsen Software Ltd.
Phone us +44 7989 401397
Email us info@olsensoft.com
home | training | services | content | code home > training > java > jpa Back to top
Java Persistence API 2 Development (3 days) print Download

course overview

The Java Persistence API (JPA) is a standard object-relational mapping (ORM) technology for Java Enterprise Edition applications. This course takes a detailed look at JPA 2, describing how to map complex relational structures and how to use the Java Persistence Query Language (JPQL) effectively.

what you'll learn

prerequisites

course details ShowHide

Persistence in Java EE

  • Entity beans
  • EntityManager and Persistence Units
  • Mapping entity classes to relational databases
  • Providing metadata via annotations and XML
  • Using the Java Persistence API
  • Summary of JPA 2.0 features

JPA Queries

  • Overview of Java Persistence Query Language (JPQL)
  • Lazy and eager Loading
  • Queries
  • Parameters
  • Paging and scrolling
  • Projections
  • Aggregates

Going Further with JPA Queries

  • Queries across relationships (inner joins, outer joins, fetch joins)
  • Batch operations
  • Bulk updates
  • Named queries
  • Native queries
  • Primary key generation

Using the Criteria API

  • Overview of the Criteria API
  • Building Criteria API queries
  • Strongly typed query definitions

Working with Persistent Objects

  • Entity lifecycle
  • Entity identity
  • Transient, persistent, and detached states
  • Persistent object updates

Mapping Collections and Associations

  • Fetching strategies
  • Many-to-one
  • Bidirectional many-to-one
  • One-to-one
  • Bidirectional one-to-one
  • Many-to-many
  • Bidirectional many-to-many
  • Components
  • Embedded objects
  • Cascading

Mapping Inheritance

  • Overview
  • Inheritance mapping strategies
  • Table per concrete class
  • Table per subclass
  • Table per hierarchy
  • Unions
  • Polymorphism

Transaction Management

  • Transaction configuration
  • Transaction API
  • Transaction propagation

Locking and Versioning

  • Optimistic locking and versioning
  • Pessimistic locking