Java Persistence API (JPA) - Seminare
Seminarziel
Dieses Seminar vermittelt Ihnen einen Einblick in die Konzepte und Mechanismen von Java Persistence API(JPA). Unsere Themen sind die Basics von OR-Mapping mit der JPA, die fortgeschrittenen JPA-Annotationen, der Entity Listener, das Performance Tuning und die Neuerungen in JPA 2.0. Außerdem eignen Sie sich wichtige Optimierungshilfen an, wie das Caching oder Lazy-Loading.
Zielgruppe
- Software-Entwickler
Voraussetzungen
- Java- Schulungen: Java für Umsteiger, Java für Fortgeschrittene
Inhalt
Grundlagen OR-Mapping mit der Java Persistence API (JPA)
OR-Mapper (ORM), ORM versus JDBC
Impedance Mismatch zwischen Relationen und Objekten
JPA im Kontext der Java Enterprise Edition, Java EE 5, Java EE 6
Java Persistence Spezifikation/Java Persistence API (JPA), JSR 220
Objektrelationale Metadaten mit Java 5-Annotationen
Modellierung durch POJOs (plain old Java objects)
- JPA-Provider
- Hibernate
- JPA im Application Server
- EclipseLink
Java Persistence Query Language (JPA-QL)
Polymorphe Anfragen
select, from und where
Definition Alias
distinct, group, having, order
Aggregat-Funktionen
Kartesisches Produkt, implizites/explizites/Inner Join
N+1 Update Problemvermeidung durch richtiges Join
Benannte Parameter
Bulk-Updates
In-Container- und Out-of-Container-Persistence
Persistence Context und Extended Persistence Context
Das DAO/Repository Pattern
EJB 3 Entity Beans und JPA im Java EE Container
Kontext im Thread-Local
Apache MyFaces Orchestra Projekt
Session-Fassaden
JPA bei Web-Anwendungen
Annotationen und Entity-Manager-API
Kundenklasse- Entity-Klasse
EntityManagerFactory und EntityManager
Persistence Unit und Datei META-INF/persistence.xml
EntityTransaction
Persistence Context und Zustände
persist(), merge(), remove(), flush() und refresh()
find() und getReference()
createQuery() und Query
Identität, (Autogenerierter) Schlüssel
FlushMode
Umgang mit Triggern
Fortgeschrittenen JPA-Annotationen
@Entity, @Table
Teilen in eine zweite Tabelle @SecondaryTable
Eingebettete Komponenten, @Embedded
Persistente Attribute/Properties, @Column
Datumswerte, Aufzählungen (Enum), Blob und Clob mit @Lob
Annotation Namend Queries
Schlüssel
- @Id
- Zusammengesetzte Schlüssel
- @IdClass
- Auto-generierter Schlüssel
Entity Listener Schnittstelle
@EntityListeners
Callback-Methoden
@PostLoad
Performance Tuning
Konfiguration von EhCache am Beispiel von Hibernate
Caching
- Caching Strategien
- First Level Cache
- Second Level Cache
Zugriff auf natives SQL und gespeicherte Prozeduren
Transaktionen und Locking
Schnittstellen zur Transaktionssteuerung
Locking
- Optimistisches Locking
- Versionsspalte mit @Version
Sperrverfahren, Schatteninformationen
Assoziationen und Vererbung
Abbildungsmöglichkeiten der objektorientierten Vererbung
Assoziativspeicher und @MapKey
1:1, 1:n und @JoinColumn, mappedBy, n:1, n:m
Bidirektionale Beziehungen
Sortierung
CascadeType, FetchType, Lazy Loading
@Inheritance und @MappedSuperclass
Neues in JPA 2.0 (JSR 317)
Neuerungen des EntityManager
Erweiterungen der JP-QL
Query Criteria API
Cache API
Pessimistisches Locking
Proprietäre Erweiterungen der bekannten OR-Mapper
Weitere Änderungen
Literatur
nach Absprache
Verwandte Seminare
|
Öffentliches Seminar |
Firmen Seminar |
Inhouse Seminar |
Individual Seminar |
| Dauer | 3 Tage |
| Seminarpreis pro Person | € 1.295,00 netto |
| € 1.541,05 inkl. 19% MwSt | |
| Seminarunterlagen | zzgl. |
| Verpflegung | zzgl. |
