Szkolenie: Zaawansowane aspekty Jakarta Persistence API i Hibernate
Szkolenie zaawansowane Jakarta Persistence API i Hibernate uczy optymalizacji, mapowania relacyjnego, wydajności zapytań, obsługi cache i transakcji, profilowania oraz testowania aplikacji Java z wykorzystaniem najnowszych wersji frameworków ORM
- Trenerzy praktycy
- Kameralne grupy
Czas trwania szkolenia:2 dni (16h)
Kod kursu:HIB/EXT
Zaawansowane aspekty Jakarta Persistence API i Hibernate
Cele szkolenia
Szkolenie przygotowuje do samodzielnego projektowania i optymalizowania warstwy dostępu do danych w aplikacjach Java z użyciem zaawansowanych funkcji JPA i Hibernate
Szkolenie uczy rozwiązywania nietypowych problemów związanych z mapowaniem obiektowo-relacyjnym oraz zarządzaniem wydajnością zapytań i sesji
Szkolenie pokazuje, jak wdrażać mechanizmy audytu, testowania oraz monitorowania wydajności w środowisku produkcyjnym aplikacji
Dla kogo?
Programistów Java z doświadczeniem w pracy z relacyjnymi bazami danych, którzy chcą pogłębić wiedzę z zakresu JPA i Hibernate
Architektów systemów odpowiedzialnych za projektowanie i optymalizację warstwy dostępu do danych w aplikacjach enterprise
Osób realizujących zadania związane z wydajnością, testowaniem i utrzymaniem aplikacji opartych o ORM
Efekty kształcenia
Uczestnik projektuje zaawansowane mapowania obiektowo-relacyjne w JPA i Hibernate
Uczestnik analizuje i optymalizuje wydajność zapytań oraz operacji na bazie danych
Uczestnik wdraża strategie zarządzania sesją i pamięcią podręczną
Uczestnik stosuje techniki audytu i monitorowania zachowań ORM
Uczestnik rozwiązuje problemy z transakcjami i blokadami w środowisku produkcyjnym
Uczestnik testuje i automatyzuje wykrywanie niepożądanych zachowań ORM
Wymagania
Od uczestników szkolenia wymagana jest umiejętność programowania w języku Java oraz podstawy relacyjnych baz danych i języka SQL
W cenie otrzymasz:
Materiały szkoleniowe
Certyfikat ukończenia szkolenia
W przypadku szkolenia w trybie stacjonarnym zapewnimy Ci również lunch oraz sprzęt niezbędny do nauki
Program szkolenia
Krótki przegląd najważniejszych zmian wprowadzonych w najnowszej wersji JPA / Hibernate
Nietypowe przypadki mapowania obiektowo relacyjnego
Pola wirtualne z wykorzystaniem adnotacji @Formula oraz @Transient
Wydajna obsługa danych binarnych
Własne konwertery wartości - AttributeConverter
Adnotacja @Embedded a adnotacja @Parent
Poprawne użycie atrybutów w standardowych adnotacjach relacji
Sposoby mapowania typów kontenerowych oraz tablic z wykorzysatniem adnotacji @ElementCollection oraz @CollectionTable
Metody poprawnego odwzorowywania kolekcji Map
Adnotacja @SQLRestriction
Aspekty generowania kluczy głównych
Klucze główne a prawidłowa implementacja metod equals i hashCode
Adnotacja @NaturalID
Klucze złożone z wykorzystaniem @EmbeddedId
Klucz derywatywny - @MapsId
Aspekty polimorfizmu
Strategie odzworowania zależności polimorficznych
Stosowanie interfejsów w polach encji z użyciem adnotacji @Any oraz @ManyToAny
Optymalizacja stosowania sesji
Detaching / Merging
Strategie wykonywania operacji flush przez Hibernate
Stateless session
Session scrolling
Tryb read-only
Wydajność zapytań
Fetch Join
Named Queries / Native Queries
Adnotacje @Filter oraz @FilterDef
Usuwanie rekordów "na miękko" z wykorzystaniem adnotacji @SoftDelete
Bulk Update / Delete
Grafy encji: Load Graph vs Entity Graph
Strategie Fetching
Tworzenie zapytań agregacyjnych z wykorzystaniem Criteria API
Zapytania natywne i adnotacja @SqlResultSetMapping
Widoki z użyciem adnotacji @Subselect
Optymalizacje w zakresie sortowania zawartości
Wykorzystanie wywołań zwrotnych
Interceptory
Callbacki
Wykorzystanie pamięci cache
Cache pierwszego poziomu
Opcjonalny cache drugiego poziomu - integracja z dodatkowymi rozwiązaniami
Strategie aktualizacji zawartości cache
Cache dla zapytań
Cache dla planów zapytań
Profilowanie i monitorowanie wydajności
Dobór kolekcji
Niestandardowe pule połączeń
Normalizacja schematu = problem N+1 / produkt kartezjański
Transakcje optymistyczne i pesymistyczne
Sposoby wersjonowania rekordów
Stosowanie blokad pesymistycznych
Audytowalność rekordów z wykorzystaniem Hibernate Envers (opcjonalnie)
Testowanie integracyjne i automatyzacja wykrywania niepożądanych zachowań Hibernate'a
Wybrane opinie
Przeczytaj pozytywne opinie pochodzące z ankiet satysfakcji z naszych szkoleń wypełnianych wyłącznie przez ich uczestników po realizacji usługi

