Java Persistence 2.1 Schulung
Beschreibung
Die Schulung bietet eine umfangreiche Einführung in Java Persistence. Die meisten Funktionen werden erklärt und es wird ein gutes Verständnis für grundlegende Konzepte vermittelt.
Ziel ist den Teilnehmer fit zu machen, eine Java Persistence basierte Anwendungen zu entwickeln, bekannte Fallstricke zu umschiffen und Kenntnisse über Java Persistence basierte Architektur zu haben.
Die Schulung umfasst drei Tage und beinhaltet eine große Zahl von praktischen Übungen. Abgerundet werden die Übungen mit dem Komplettieren einer Webanwendung.
Ihr Trainer ist Sebastian Hennebrüder.
Wie bucht man?
Prüfen Sie meine regulären Termine oder fragen Sie nach Inhouse Schulungen
Dauer 3 Tage – 18 Stunden
Preis 1725,- EUR (netto), 2052,75 EUR ( inkl. MwSt.)
Zielgruppe
Javaentwickler mit wenig oder keiner Java Persistence Erfahrung, die eine solide Schulung brauchen, um Java Persistence Anwendungen zu entwickeln.
Es werden Java Kenntnisse und Erfahrung in der Entwicklung von JDBC basierten Datenbankanwendungen vorausgesetzt.
Bereitgestellte Unterlagen
Gebundener Druck der Folien
Buch Hibernate – Das Praxisbuch für Entwickler (Galileo Verlag, Autor Sebastian Hennebrüder)
Teilnahmezertifikat
Inhalte …
Erster Tag
1 Einführung
- Object Relational Mapping
- Java Persistenz 1.0
- Was ist neu in Java Persistence 2.0 (JSR 317)
2 Mapping von Attributen
- Annotation versus XML Mapping
- ID Spalten
- Mapping von Attributen
- Mapping von Komponenten
- Übung – Mapping von Attributen
3 Java Persistence Konzepte verstehen – Status von Objekten
- Database identity versus Java identity
- Equals und hashcode
4 Mit Objekten arbeiten
- Tools für die Java Persistence-Entwicklung
- Save, update, delete
- Reattaching mit update, merge, lock
- Abfragen
- Criteria- und HQL-Abfragen
- Where Bedingungen
- Übung – Mit Objekten arbeiten
5 Konfiguration
- Connection Pool
- Anwendungs – Connection pool, Container – Connection pool, JNDI
- JDBC Einstellungen
- Session- und Transaktionsverhalten
6 Beziehungen
- Mapping
- List, Set, Map oder Array
- 1:1, 1:n, m:n, 1:n:1, rekursive Beziehungen
- Beziehungen verwenden
- Effizientes verwenden von Beziehungen – Cascading
- Übung – Beziehungen verwenden
Zweiter Tag
7 Abfragen
- Aggregation mit sum, average, count, min, max
- Sortieren
- Abfragen für Berichte
- Joins
- Abfragen mit Beziehungen
- Übung – Abfragen
8 Java Persistence Konzepte verstehen – Lazy loading
- Das Lazy Initialization Problem
- Eager und Lazy loading
- Das Standardverhalten anpassen
- Daten mit Abfragen initialisieren
- Strategien auswählen
- Übung – Lazy Loading
9 Vererbung
- Strategien
- Übung – Vererbung
10 Java Persistence Konzepte verstehen – Java Persistence Session
11 Transaktion steuern und Exceptions behandeln
- Exceptions behandeln
- Exceptions behandeln mit AOP, EJB 3
- Exceptions behandeln in Webanwendungen (JSF, Struts 2, Stripes, Tapestry)
- Transaktionen steuern
- programmatisch
- deklarative mit AOP (Spring, Google Guice) oder EJB 3
12 Konkurrierender Zugriff
- Optimistisches Sperren
- Übung – Optimistisches Sperren
Dritter Tag
13 Validierung Bean Validation
- Validierung mit Annotation
- Benutzerdefinierte Validierung
- Übung – Validierung
14 Architektur
- Integration
- EJB 3 – JBoss / Glassfish etc
- Webanwendung – Jetty / Tomcat
- DAO – Data Access Objects
- Entwickeln von DAO
- Granularität – DAO pro Klasse, DAO pro Anwendungsfall, DAO pro ?
- Persistent Domain Objects
- Geschäftslogik kapseln
- Konsistenz in den Objekten garantieren
- Session Lebensdauer
- Session pro Transaktion
- Open Session In View (traditionell)
- Open Session In View 2.0
15 Testing
- Test Tools
- Wie testet man?
- Was testet man?
16 Prototyp einer Webanwendung
Praktische Übung bei der die Teilnehmer eine vorbereitete Webanwendung fertig stellen und die gelernten Best Practices und Design Pattern Schritt für Schritt anwenden.