Zaufali Nam

  • Zaufali Nam
  • Zaufali Nam
  • Zaufali Nam
  • Zaufali Nam
  • Zaufali Nam
  • Zaufali Nam
  • Zaufali Nam
  • Zaufali Nam
  • Zaufali Nam
  • Zaufali Nam
  • Zaufali Nam
  • Zaufali Nam
  • Zaufali Nam
  • Zaufali Nam
  • Zaufali Nam
  • Zaufali Nam
  • Zaufali Nam
  • Zaufali Nam
  • Zaufali Nam
  • Zaufali Nam
  • Zaufali Nam
  • Zaufali Nam
  • Zaufali Nam
  • Zaufali Nam
  • Zaufali Nam
  • Zaufali Nam
  • Zaufali Nam
  • Zaufali Nam
  • Zaufali Nam
  • Zaufali Nam
  • Zaufali Nam
  • Zaufali Nam
  • Zaufali Nam
  • Zaufali Nam
  • Zaufali Nam
  • Zaufali Nam
  • Zaufali Nam
  • Zaufali Nam
  • Zaufali Nam
  • Zaufali Nam
  • Zaufali Nam
  • Zaufali Nam
  • Zaufali Nam
  • Zaufali Nam
  • Zaufali Nam
  • Zaufali Nam
  • Zaufali Nam
  • Zaufali Nam
  • Zaufali Nam
  • Zaufali Nam
  • Zaufali Nam
  • Zaufali Nam
  • Zaufali Nam
  • Zaufali Nam
  • Zaufali Nam
  • Zaufali Nam
  • Zaufali Nam
  • Zaufali Nam
  • Zaufali Nam
  • Zaufali Nam
  • Zaufali Nam
  • Zaufali Nam

Kod Szkolenia: J/JPA-HIB

Tytuł Szkolenia: Warstwa trwałości w oparciu o podejście ORM w JPA2/Hibernate.

Karta Szkolenia

Adresaci szkolenia:

Szkolenie adresowane jest do programistów Java pragnących dowiedziec się jak tworzyć warstwę dostępu do danych w oparciu o koncepcje object relational mapping z użyciem JPA2/Hibernate.

Cel szkolenia:

Celem szkolenia jest poznanie zasad tworzenia warstwy dostępu do danych w oparciu o koncepcje object relational mapping z użyciem JPA2/ Hibernate. wraz z zagadnieniami integracji, testowania oraz skalowania.

Szkolenie może być realizowane w oparicu o API JPA2 z uwzględnieniem specyfików dostawcy lub w oparciu o API Hibernate.

W szczególności uczestnicy:

  • poznają zasadę mapowania relacyjno-obiektowego, i nauczą się projektować warstwę trwałości w oparciu o JPA począwszy od prostych encji po złożone zagadnienia takie jak dziedziczenie
  • dowiedzą się jak odczytywać i utrwalać encje, zapewniać transakcyjność operacji
  • dowiedzą się jak dbać o spójność danych i wydajność aplikacji (w tym cache 2 poziomu)
  • dowiedzą się jak integrować opracowane rozwiązania z aplikacją w oparciu o rozwiązania EJB3/Seam/Spring
  • dowiedzą się jak testować ww. komponenty

Wymagania:

Od uczestników szkolenia wymagana jest umiejętność programowania w języku Java (do poznania na kursie J/JP), podstawy relacyjnych baz danych i SQL.

Parametry szkolenia:

2*7 godzin wykładów i warsztatów w proporcji 1/3.

Polecane szkolenia poprzedzające:

J/JP

Szczegółowy Program

Program szkolenia

  1. Koncepcja Mapowania relacyjno-obiektowego
  2. Klasy Encyjne
    1. klasy proste
    2. klasy zagnieżdżone
    3. Pola i dostęp do pól
    4. Pola będące kolekcjami
  3. Asocjacje – z uwzględnieniem krotności i kierunkowości
  4. Klucze
    1. Proste
    2. Złożone
    3. Automatyczne generowanie kluczy
  5. Nazewnictwo obiektów w bazie danych
    1. Domyślne mapowanie
    2. Zmiana domyślnych mapowań
  6. Kontekst trwałości (PersistentContext)
    1. Zarządzany przez kontener i zarządzany przez aplikację
    2. Transakcyjny(Transaction) i rozszerzony(Extended)
  7. Cykl życia encji
  8. Operacje na danych
  9. Transakcje
  10. Zapytania
    1. Tworzenie zapytań w JPQL
      1. Składnia
      2. Query i TypedQuery
      3. Zapytania nazwane
    2. JPA2 Criteria API
      1. Idea Criteria API, podstawowe składowe
      2. MetaModel
        1. Koncepcja
        2. Klasy MetaModel w postaci kanonicznej i niekanonicznej
        3. MetaModel API
      3. Tworzenie silnie typowanych zapytań
      4. Tworzenie słabo typowanych, dynamicznych zapytań
      5. Edycja zapytań
      6. Podejścia alternatywne: LIQUidFORM
    3. Typowe scenariusze, w tym serach-within i serach-by-example
    4. Zapytania Natywne, mapowanie wyników
  11. Metody nasłuchiwania cyklu życia
  12. Walidacja
    1. Podstawy Bean Validation 1.0 (JSR 303)
      1. Koncepcja Bean Validation
      2. Definiowanie i nakładanie ograniczeń na typy, pola, metody
      3. Parametryzowanie ograniczeń
      4. Wbudowane ograniczenia
      5. Komponowanie ograniczeń złożonych
      6. Tworzenie Walidatorów
      7. Proces walidacji
        1. Pola, obiekty i grafy obiektów
        2. Grupy i sekwencje
        3. Blokowanie dostępu do pola oraz kaskadowego dostępu
      8. API i wyjątki
    2. JPA2 a Bean Validation
      1. Konfiguracja walidacji
      2. Zasada działania Bean Validation w kontekście JPA
      3. Ograniczenia walidujące a generacja obiektów bazy danych
  13. Modele i implementacja dziedziczenia
  14. Zagadnienia spójności danych
    1. optimistic locking
    2. pesimistic locking
    3. Rozszerzenia w JPA2
  15. Cache drugiego poziomu
    1. Idea cache 2 poziomu
    2. Konfiguracja i tryby pracy cache
    3. Konfiguracja encji
    4. Interakcja cache <-> baza
    5. Cache w oparciu o Hibernate (dla szkolenia bazującego na hibernate)
    6. Cache w oparciu o mechanizmy JPA2
    7. Zagrożenia
  16. Testowanie komponentów wykorzystujących JPA
  17. Konfiguracja i deployment
    1. Jako aplikacja Java SE / dektop
    2. Jako moduł web
    3. W obrębie modułu ejb
  18. JPA a biblioteki dostawców(Hibernate,Toplink,EclipseLink,OpenJPA)
  19. Zagadnienia specyficzne dla Hibernate (dla szkolenia bazującego na hibernate)
    1. Hibernate API
    2. Wybrane dodatkowe możliwości
    3. Podprojekty Hibernate: Search, Shards, Validator, Envers
  20. Wzorce Projektowe warstwy dostępu do danych