Das Java-Persistenz-API
Object-Relational-Mapping
Beschreibung
In diesem Kurs lernen Sie das java-persistence-api kennen, welches verwendet wird, um gute, alte Java-Objekte POJOs ) in einer relationalen Datenbank zu speichern und die weiteren CRUD-Operationen sowie Abfragen zu erstellen.
Vorteile sind:
- Das JPA ist unabhängig vom verwendeteten Datenbank-System; einmal programmiert, funktioniert die Anwendung mit mariadb genauso wie mit dem MS-SQLServer und anderen.
- Das JPA ist eine standardiesierte Schnittstelle und unterliegt kaum Änderungen, die nicht rückwärts kompatible sind.
- Mehrere Anbieter ( hibernate , eclipselink , toplink-essentials , …) haben sie implementiert und wurden zertifiziert: Das reduziert die Abhängigkeiten für Ihr Projekt auf beinahe null.
Agenda
Kapitel 1: Konfiguration und Verbindung
- Via Datei persistence.xml und RESOURCE_LOCAL
- Das Interface EntityManagerFactory
- Das Interface EntityManager
- Eine erste Entity -Klasse mit essentiellen @Annotations
- Transaktion starten und Objekt einfügen
- Laden via @Id
- Verbindungsabbau
Kapitel 2: Schema-Generierung
- Via Datei persistence.xml
- Mit einer eigenen PersistenceUnitInfo und Entity-Suche
- Mehr einfache Annotationen ( @Column , Enumerated , …)
- Relationen & Verknüpfungen ( @OneToMany / @ManyToOne , @OneToOne , …)
- Datums- und Zeitfelder
- Probleme durch mehr Annotationen vermeiden
Kapitel 3: Abfragen
- Objekte ändern ohne DB-Zugriff
- Die Sprache JPQL
- Einfache Filter via @NamedQuery
- Objekte löschen
- Native Datenbank-Abfragen
Kapitel 4: Speziellere Techniken
- Datenbank-Contraints
- @EntityListeners als Äquivalent zu Triggern
- Entitäten für Sichten (Views)
- Optimierung via Ergebnis-Klassen
- Zugriff auf JDBC-Verbindung und Hibernate-Session
Kapitel 5: Auf ins Web
- Konfiguration im Web- und Application-Server
- Context-Dependency-Injection
- Unterschiede zu RESOURCE_LOCAL
Kapitel 6: Komplexe Filter
- Das Criteria-API
- Einfache Abfragen mit ParameterExpression
- Komplexe Abfrage realisieren
Steckbrief
| Titel: | Object-Relational-Mapping mit dem Java-Persistenz-API |
|---|---|
| Level: | Fortgeschrittene |
| Dauer: | 3 Tage |
| Technolgien: | openjdk, mariadb|h2|postgres, wildfly |