| Tytuł: | Java Persistence API (Hibernate) |
| Kod: | advanced-JPA |
| Kategoria: | Zaawansowana Java |
| Forma: | 50% wykłady / 50% warsztaty |
| Czas trwania: | 2-3 dni |
| Odbiorcy: | developerzy |
| Zapisy: |
Indywidualne zamówienie i dopasowanie dla grupy. |
| Logistyka: |
W siedzibie klienta lub w innym dowolnym miejscu. |
Szkolenie przedstawia rzetelne podstawy JPA, standardowe problemy i sposoby ich efektywnego rozwiązania oraz zagadania zaawansowane, takie jak aspekty wydajności.
Wyróżniki szkolenia
- Poruszamy zagadnienia zaawansowane
- Przedstawiamy alternatywne sposoby korzystania z JPA
- Zwracamy szczególną uwagę na wydajność
Program Szkolenia
Program jest ramą w jakiej możemy się poruszać merytorycznie - program dla konkretnego szkolenia dedykowanego ustalamy z grupą na podstawie analizy przed-szkoleniowej.-
Podstawy modelowania obiektowego i mapowania relacyjno-obiektowego -
Konfiguracja Hibernate- W środowisku Java EE
- W środowisku niezarządzanym
- Spring
- W środowisku Java EE
-
Mapowanie encji- Najlepsze praktyki
- Typy, klucze proste i ograniczenia
- Powiązania
- Strategie pobierania zagregowanych danych – praktyczne rady
- Strategie wykonywania operacji kaskadowych – praktyczne rady
- Najlepsze praktyki
-
Mapowanie zaawansowane- Zagnieżdżenia
- Efektywne mapowanie Value Objects jako klas Embeddable
- Klucze złożone
- Wykorzystanie map do realizacji persystencji
- Kolekcje typów prostych
- Zagnieżdżenia
-
EnityManager i kontekst persystencji (Persistent Context)- Cykl życia
- API EntityManager
- Tryb rozszerzony
- Imperatywne zarządzanie synchronizacją kontekstu persystencji
- Cykl życia
-
Tworzenie efektywnych zapytań- Metody tworzenia prostych zapytań
- Język JPQL
- Criteria API w JPA 2.0
- Język JPQL
- Zaawansowane wymagania biznesowe za pomocą dynamicznego składania zapytań
- Techniki pisania wydajnych zapytań
- Ograniczenie pobierania nie potrzebnych danych
- Ograniczenie ilości zapytań do bazy
- Prekompilowanie zapytań JPQL – nazwane zapytania
- Ograniczenie pobierania nie potrzebnych danych
- Metody tworzenia prostych zapytań
-
Odwzorowanie dziedziczenia- Trzy strategie (wady i zalety)
- Dobór strategii do problemu
- Zapytania polimorficzne
- Trzy strategie (wady i zalety)
-
Transakcyjność operacji JPA- Problem transakcyjności operacji JPA
- Optymistyczne i pesymistyczne blokowanie
- Tryb rozszerzony EntityManager
- Problem transakcyjności operacji JPA
-
Optymalizacja- Techniki optymalnego mapowania
- Cache (zapytań, encji)
- Pułapki lazy loadingu (n+1 select problem)
- Unikanie pobierania nadmiernych danych – rozwiązania stosowne do problemu
- Techniki optymalnego mapowania
-
Architektury warstwy dostępu do danych- Podejście płaskie
- Warstwa Data Access Objects (DAO)
- Repozytoria Domain Driven Design (DDD)
- Systemy rozproszone
- Podejście płaskie
-
Zagadnienia zaawansowane- Mechanizmy JPA - przykłady praktycznego wykorzystania
- Wywołania zwrotne
- Klasy nasłuchujące
- Praktyczne wykorzystanie mechanizmów
- Wywołania zwrotne
- Zasada działania JPA
- Szczegóły implementacji Hibernate – zwiększenie świadomości używanego narzędzia
- Hibernate Shreads
- Hibernate Search - Lucene
- Wsparcie dla konwersacji - Tryb rozszerzony
- Przydatne rozszerzenia Hibernate
- Dostęp do Hibernate Session
- Criteria API w Hibernate – produktywne tworzenie dynamicznych zapytań
- Dodatkowe generatory kluczy
- Dodatkowe operacje kaskadowe
- Dostęp do Hibernate Session
- Mechanizmy JPA - przykłady praktycznego wykorzystania
Pobierz program w formacie PDF
Trenerzy
Poznaj ekspertów, którzy mogą poprowadzić Twoje szkolenie.