Skip to main content

Notice: This Wiki is now read only and edits are no longer possible. Please see: https://gitlab.eclipse.org/eclipsefdn/helpdesk/-/wikis/Wiki-shutdown-plan for the plan.

Jump to: navigation, search

EclipseLink/Training/JPA/BlackBelt

< EclipseLink‎ | Training/JPA
Revision as of 08:55, 25 September 2009 by Unnamed Poltroon (Talk) (Course Outline)

EclipseLink JPA Training: Black Belt

Course Under Development

This page describes the EclipseLink Black Belt (advanced) training course. The intent is produce a set of materials that are freely available and licensed under EPL & EDL so that community members can use these materials to train others.

Date Committer(s) Description
July 29, 2009 dclarke Initial Outline Proposed

Course Outline

Goal: Educate EclipseLink users on advanced usage of EclipseLink JPA

Outline

  • Introducing EclipseLink JPA
  • Configuration
    • JPA: persistence.xml, annotations, and orm.xml
    • EclipseLink JPA: PU Properties, annotations, eclipselink-orm.xml, and query hints
    • EclipseLink native ORM: sessions.xml and deployment.xml
    • DatabasePlatform
    • Server Platform
  • Mapping
    • Additional Mapping Types
    • Private Owned
  • Diagnostics
    • Logging
    • Profiling
    • JMX/MBeans
  • Entity Weaving
    • Weaving features: Lazy Loading, Fetch Groups, Change Tracking, State Caching
    • Dynamic and Static usage
  • Querying
    • Dynamic Querying using Expressions (native criteria)
  • Transactions
    • Additional Locking options
  • Caching
    • Isolated Cache Usage
    • Shared Cache Config
      • Cache Types: FULL, WEAK, SOFT_WEAK, HARD_WEAK, NONE
      • Invalidation/Expiration
      • Cache Coordination
  • Customizing Behaviour
    • Descriptor Policies: Instantiation, CloneCopy, ...
    • JPA Entity events and Descriptor Events
    • Session Events
  • Performance Tuning
    • Graph Loading with minimal SQL
      • FETCH JOIN
      • Joining and Batching Query Hints
    • Projections versus Entity Queries
    • Leveraging the cache
      • Pre-loading
      • Cache Effectiveness

Additional Topics

Depending on the application architecture being used there are a variety of additional topics which may be covered.

  • EclipseLink JPA in a multi-tiered architecture
  • EclipseLink JPA in a rich client application (JavaSE)
  • EclipseLink JPA in an OSGi container

Courseware Development

The courseware will be developed as part of the EclipseLink project in trunk @ /svnroot/rt/org.eclipse.persistence/trunk/documentation/courseware

Back to the top