Trwałe przechowywanie danych z użyciem Hibernate i JPA

Opis

ORM to sprawdzone technologia, która z powodzeniem łączy dwa światy – relacyjnych baz danych oraz języków obiektowych. Hibernate to jeden z pierwszych szkieletów tego typu, który w znacznym stopniu przyczynił się do rozpowszechnienia tej technologii. Cały czas używany w stosie technologicznym Java, szczególnie w połączeniu ze Spring Framework. Uczestnik szkolenia po trzydniowym kursie zdobędzie praktyczne umiejętności wykorzystania Hibernate w komercyjnych projektach.

Podstawowy program

Moduł. 1
Wprowadzenie
Moduł. 2
Hibernate w praktyce
Moduł. 3
Zapytania
Moduł. 4
Relacje i dziedziczenie
Moduł. 5
Hibernate a JPA
Moduł. 6
Transakcje Hibernate/JPA
Moduł. 7
Cache
Moduł. 8
Techniki optymalizacji

Szczegółowy program

Moduł. 1
Wprowadzenie
  • Przypomnienie kluczowych elementów biblioteki Hibernate
  • Architektura
Moduł. 2
Hibernate w praktyce
  • Mapowanie obiektów POJO
  • Klucze proste i złożone
  • Obiekty zagnieżdżone (Embedable)
  • Kolekcje
  • Interfejs Session
    • Cykl życia
    • Zarządzanie sesją
    • Sesja na żądanie
    • Propagacja sesji
    • Sesja jako cache
    • Synchronizacja z bazą danych
    • Rola identyfikatorów
    • Opróżnianie sesji
Moduł. 3
Zapytania
  • Przypomnienie informacji odnośnie zapytań
  • Zapytania nazwane, projekcje i agregaty
  • Zapytania poprzez kryteria (Criteria API)
    • Jak używać
    • Ograniczenia
    • Zapytania z użyciem relacji
    • Sortowanie
    • Strategie pobierania
  • API zapytań poprzez Criteria
Moduł. 4
Relacje i dziedziczenie
  • Przypomnienie kluczowych informacji o relacjach
  • Mapowanie N:N
  • Relacje jedno- i dwukierunkowe
  • Inwersja w relacji
  • Kaskadowość
  • Wczesne i opóźnione ładowanie
  • Mapowanie dziedziczenia
    • Strategia „tabela na klasę”
    • Strategia „tabela na podklasę”
  • Strategia „tabela na klasę konkretną”
Moduł. 5
Hibernate a JPA
  • Przegląd Java Persistence API
  • Hibernate a JPA
  • Adnotacje JPA
  • EntityManager oraz PersistenContext
  • Tryb rozszerzony
  • Synchronizacja kontekstu
Moduł. 6
Transakcje Hibernate/JPA
  • Model transakcji
  • Transakcje a cykl życia obiektu
  • Blokowanie optymistyczne
  • Transakcje a baza danych
  • Wersjonowanie
Moduł. 7
Cache
  • Zasada działania
  • Poziomy cache’u
  • Cache L2 rozproszony i w klastrze
  • Cache Providers
  • Konfiguracja cache’u
  • Zarządzanie
Moduł. 8
Techniki optymalizacji
  • Analiza wykonania zapytania za pomocą profilera
  • AnalizaAnaliza i manipulacja generowanych zapytań SQL
  • AnalizaZapytania natywne i konteksty ich stosowania
  • AnalizaZapytania lazy i eager a czas wykonania i zużycia pamięci oraz wykorzystania cache’u
  • AnalizaHibernate Query Cache
  • AnalizaN+1 problem
  • AnalizaMonitoring i tuning
    • cache
    • transakcje
    • pula JDBC
    • zaawansowany monitoring z użyciem MBean
  • Implementacja metod hash() i equals()

Parametry szkolenia

Czas trwania
3 x 8h
Forma zajęć
Ćwiczenia - 60%, wykład - 40%
Kod
JHIB
Wielkość grupy
do 10 osób

Jak zamówić

« lista szkoleń