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.
Difference between revisions of "EclipseLink/Training/JPA/BlackBelt"
< EclipseLink | Training/JPA
(→Suggested Topics) |
(→Course Outline) |
||
Line 18: | Line 18: | ||
== Course Outline == | == Course Outline == | ||
− | + | '''Goal:''' Educate EclipseLink users on advanced usage of EclipseLink JPA | |
− | + | ||
− | + | ||
=== Outline === | === Outline === | ||
Line 26: | Line 24: | ||
*Introducing EclipseLink JPA | *Introducing EclipseLink JPA | ||
*Configuration | *Configuration | ||
− | **JPA: persistence.xml, annotations, and orm.xml | + | ** JPA: persistence.xml, annotations, and orm.xml |
− | **EclipseLink JPA: PU Properties, annotations, eclipselink-orm.xml, and query hints | + | ** EclipseLink JPA: PU Properties, annotations, eclipselink-orm.xml, and query hints |
− | **EclipseLink native ORM: sessions.xml and deployment.xml | + | ** EclipseLink native ORM: sessions.xml and deployment.xml |
− | *Mapping | + | ** DatabasePlatform |
− | ** | + | ** Server Platform |
− | *Diagnostics | + | |
− | **Logging | + | * Mapping |
− | **Profiling | + | ** Additional Mapping Types |
− | **JMX/MBeans | + | ** Private Owned |
− | * | + | |
− | ** | + | * Diagnostics |
− | **Dynamic Querying using Expressions (native criteria) | + | ** Logging |
− | *Transactions | + | ** 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 | *Caching | ||
− | + | ** Isolated Cache Usage | |
− | **Isolated Cache Usage | + | ** Shared Cache Config |
− | **Cache | + | *** Cache Types: FULL, WEAK, SOFT_WEAK, HARD_WEAK, NONE |
− | * | + | *** Invalidation/Expiration |
− | ** | + | *** Cache Coordination |
− | *** | + | |
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | ***Cache | + | |
− | + | * 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 == | == Additional Topics == |
Revision as of 08:55, 25 September 2009
Contents
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
- Graph Loading with minimal SQL
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