Trwają zapisy do grupy

Szkolenie: Zaawansowane aspekty Jakarta Persistence API i Hibernate

W ramach szkolenia "Zaawansowane aspekty Jakarta Persistence API i Hibernate" stosujemy najnowsze wersje frameworka Hibernate oraz języka Java.

  • Trenerzy praktycy
  • Kameralne grupy

Czas trwania szkolenia:2 dni (16h)

Poziom zaawansowania:

Kod kursu:HIB/EXT

jpahibernate

Dostępne terminy szkolenia

  • Termin
  • Trener
  • Cena
  • Zapis
  • Lokalizacja

Termin:

23 stycznia
Trwają zapisy na szkolenie

Trener:

Trener-Sages

Cena:

2150 PLN netto
Ikona podpowiedziDowiedz się więcej o cenach szkoleń - zapraszamy do kontaktu
+23% VAT

Lokalizacja:

Zdalne
Zdalne
Ikona podpowiedziZapytaj o inne lokalizacje - w tym celu skorzystaj z chatu

Termin:

10 kwietnia
Trwają zapisy na szkolenie

Trener:

Trener-Sages

Cena:

2150 PLN netto
Ikona podpowiedziDowiedz się więcej o cenach szkoleń - zapraszamy do kontaktu
+23% VAT

Lokalizacja:

Zdalne
Zdalne
Ikona podpowiedziZapytaj o inne lokalizacje - w tym celu skorzystaj z chatu

Termin:

10 lipca
Trwają zapisy na szkolenie

Trener:

Trener-Sages

Cena:

2150 PLN netto
Ikona podpowiedziDowiedz się więcej o cenach szkoleń - zapraszamy do kontaktu
+23% VAT

Lokalizacja:

Zdalne
Zdalne
Ikona podpowiedziZapytaj o inne lokalizacje - w tym celu skorzystaj z chatu

Termin:

9 października
Trwają zapisy na szkolenie

Trener:

Trener-Sages

Cena:

2150 PLN netto
Ikona podpowiedziDowiedz się więcej o cenach szkoleń - zapraszamy do kontaktu
+23% VAT

Lokalizacja:

Zdalne
Zdalne
Ikona podpowiedziZapytaj o inne lokalizacje - w tym celu skorzystaj z chatu

Forma szkolenia

Interesuje Cię szkolenie stacjonarne?

Powiadom o kolejnych terminach

Interesuje Cię szkolenie w innym terminie?

Zaawansowane aspekty Jakarta Persistence API i Hibernate

Cele szkolenia

  • Poznanie nietypowych możliwości jakie daje Hibernate w celu osiągnięcia większej wydajności bez potrzeby nadmiarowego pisania kodu.

  • Dogłębne wyjaśnienie praktycznych problemów napotykanych w trakcie wytwarzania aplikacji z wykorzystaniem Jakarta Persistence API oraz Hibernate.

  • Poznanie sztuczek, które mają wpływ na wydajność ostatecznego rozwiązania.


Dla kogo?

  • Programistów oraz architektów systemów, którzy chcą rozszerzyć umiejętności i wiedzę na temat bardziej zaawansowanych sposób wykorzystania JPA oraz Hibernate.


Zalety

  • W ramach szkolenia stosujemy najnowsze wersje frameworka Hibernate oraz języka Java.

  • Tematy teoretyczne opierają się na przykładach do rozwiązania w ramach warsztatów z automatycznymi testami, które na bieżąco oceniają poprawność.

  • Nastawienie na praktyczne przykłady, które moją pojawiać się w codziennej pracy z zastosowaniem Jakarta Persistence API oraz Hibernate.


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

Pobierz program w PDF

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

Autorem szkolenia jest Mateusz Kamiński

Absolwent informatyki Instytutu Informatyki na Wydziale Elektroniki i Technik Informacyjnych Politechniki Warszawskiej, obecnie Engineering Manager w Sages. Przez wiele lat prowadził zespoły programistyczne wytwarzające współczesne oprogramowanie, kładąc przy tym nacisk na jakość i elastyczność tworzonych rozwiązań. Od kilku lat lider zespołu technicznego Sages, który to w niedługim czasie z niewielkiego startupu rozwinął się w software house. Od początków kariery był mentorem w zespołach programistycznych,…