• Angielski
  • Polski
  • Kontakt
  • Wiedza
    • Do pobrania
    • Blogi
    • DDD-CqRS Sample
  • Aktualności
  • Pracownia programistyczna
  • Doradztwo
    • Techniczne
    • R & D
    • IT dla biznesu
    • Audyty i ekspertyzy
    • Asysta HR
  • Oferta szkoleń
    • Szkolenia
    • Szkolenia otwarte
    • Szkolenia++
    • Szkolenia - moduły
    • Mentoring
    • Wystąpienia
    • Jak pracujemy
  • O nas
    • Strona główna
    • Trenerzy
    • Nasi klienci
    • Jakość
    • Metodyka
Bottega

Praktycy dla Praktyków
Szkolenia i doradztwo

Sławomir Sobótka

Główny trener, programujący architekt specjalizujący się w Java EE, prezes SSEPP.

Szkolenie: Java Persistence API (Hibernate)

Informacje ogólne

zapytaj o szkolenie
Nazwa: Java Persistence API (Hibernate)
Kod: JPA
Kategoria: Java Enterprise Edition
Grupa docelowa: Projektanci, programiści
Czas trwania: 2-3 dni
Forma: 50% wykłady / 50% warsztaty
Pobierz program szkolenie-jpa.pdf

Szkolenie przedstawia rzetelne podstawy JPA, standardowe problemy i sposoby ich efektywnego rozwiązania oraz zagadania zaawansowane, takie jak aspekty wydajności.

Szkolenie może zostać dopasowane do kompleksowego rozwiązania osadzonego w JEE lub opartego o lekkie podejście POJOs w Spring.

Szkolenie przygotowuje uczestników do integracji mechanizmu persystencji w dowolnej architekturze aplikacji webowych i standalone.

Podczas szkolenia zwracamy szczególną uwagę na aspekty optymalizacji, zarówno na poziomie narzędzia jak i architektury systemu. Jak wynika z naszego doświadczenia nawet zaawansowani użytkownicy wpadają w pułapki wydajnościowe.

Materiał został poszerzony o specyficzne zagadnienia Hibernate – najpopularniejszej implementacji JPA.

Zalety szkolenia:
  • Poruszamy zagadnienia zaawansowane
  • Przedstawiamy alternatywne sposoby korzystania z JPA
  • Zwracamy szczególną uwagę na wydajność



Program szkolenia:


  • 1. Podstawy modelowania obiektowego i mapowania relacyjno-obiektowego

  • 2. Konfiguracja Hibernate

    • 2.1. W środowisku Java EE

    • 2.2. W środowisku niezarządzanym

    • 2.3. Spring lub Seam

  • 3. Mapowanie encji

    • 3.1. Najlepsze praktyki

    • 3.2. Typy, klucze proste i ograniczenia

    • 3.3. Powiązania

    • 3.4. Strategie pobierania zagregowanych danych – praktyczne rady

    • 3.5. Strategie wykonywania operacji kaskadowych – praktyczne rady

  • 4. Mapowanie zaawansowane

    • 4.1. Zagnieżdżenia

    • 4.2. Efektywne mapowanie Value Objects jako klas Embedable

    • 4.3. Klucze złożone

    • 4.4. Wykorzystanie map do realizacji persystencji

    • 4.5. Kolekcje typów prostych

  • 5. EnityManager i kontekst persystencji (Persistent Context)

    • 5.1. Cykl życia

    • 5.2. API EntityManager

    • 5.3. Tryb rozszerzony

    • 5.4. Imperatywne zarządzanie synchronizacją kontekstu persystencji

  • 6. Tworzenie efektywnych zapytań

    • 6.1. Metody tworzenia prostych zapytań

      • 6.1.1. Język JPQL

      • 6.1.2. Criteria API w JPA 2.0

    • 6.2. Zaawansowane wymagania biznesowe za pomocą dynamicznego składania zapytań

    • 6.3. Techniki pisania wydajnych zapytań

      • 6.3.1. Ograniczenie pobierania nie potrzebnych danych

      • 6.3.2. Ograniczenie ilości zapytań do bazy

      • 6.3.3. Prekompilowanie zapytań JPQL – nazwane zapytania

  • 7. Odwzorowanie dziedziczenia

    • 7.1. Trzy strategie (wady i zalety)

    • 7.2. Dobór strategii do problemu

    • 7.3. Zapytania polimorficzne

  • 8. Transakcyjność operacji JPA

    • 8.1. Problem transakcyjności operacji JPA

    • 8.2. Optymistyczne i pesymistyczne blokowanie

    • 8.3. Tryb rozszerzony EntityManager

  • 9. Optymalizacja

    • 9.1. Techniki optymalnego mapowania

    • 9.2. Cache (zapytań, encji)

    • 9.3. Pułapki lazy loadingu (n+1 select problem)

    • 9.4. Unikanie pobierania nadmiernych danych – rozwiązania stosowne do problemu

  • 10. Architektury warstwy dostępu do danych

    • 10.1. Podejście płaskie

    • 10.2. Warstwa Data Access Objects (DAO)

    • 10.3. Repozytoria Domain Driven Design (DDD)

    • 10.4. Systemy rozproszone

  • 11. Zagadnienia zaawansowane

    • 11.1. Mechanizmy JPA - przykłady praktycznego wykorzystania

      • 11.1.1. Wywołania zwrotne

      • 11.1.2. Klasy nasłuchujące

      • 11.1.3. Praktyczne wykorzystanie mechanizmów

    • 11.2. Zasada działania JPA

    • 11.3. Szczegóły implementacji Hibernate – zwiększenie świadomości używanego narzędzia

    • 11.4. Hibernate Shreads

    • 11.5. Hibernate Search - Lucene

    • 11.6. Wsparcie dla konwersacji - Tryb rozszerzony

    • 11.7. Przydatne rozszerzenia Hibernate

      • 11.7.1. Dostęp do Hibernate Session

      • 11.7.2. Criteria API w Hibernate – produktywne tworzenie dynamicznych zapytań

      • 11.7.3. Dodatkowe generatory kluczy

      • 11.7.4. Dodatkowe operacje kaskadowe

Lista szkoleń
nasi klienci więcej
  • asseco
  • eurobank
  • blstream
  • streamsoft
Bottega na konferencjach
  • konferencje
  • img

    Konferencja 33rd degree

    data: 19-31/03/2012

    Warsztaty DDD i 2 prezentacje

  • img

    Konferencja 4 Developers

    data: wiosna 2012

    TBD

Wydarzenia i Aktualności
  • img

    Softdevcon 2012 - Warszawa

    dodano 31/03/2012

    Zapraszamy na prezentację poświęconą technikom strukturyzacji aplikacji, która zostanie wygłoszona 8. maja podczas konferencji Softdevcon

  • 33rd Degree 2012 - Kraków

    dodano 02/01/2012

    Zapraszamy do Krakowa na konferencję 33rd Degree, gdzie nasz trener - ...

  • Softdevcon 2012 - Wrocław

    dodano 02/01/2012

    Zapraszamy na warsztat poświęcony podstawom Domain Driven Design, któr...

metodyka dreyfus
img

Wspinanie się po szczeblach kompetencji.

Metodyka nauczania w naszej firmie została oparta o jeden ze standardowych psychologicznych modeli kompetencji: pięciostopniowy model Dreyfus.

więcej
mobilne centrum szkoleniowe
img

Oferujemy usługi szkoleniowe w oparciu o własne Mobilne Centrum Szkoleniowe. MCS pozwala na przeprowadzenie szkoleń w dowolnym, dogodnym dla klienta miejscu.

Możesz wybrać dowolną lokalizację szkoleń a my zajmiemy się infrastrukturą techniczną.

więcej
Materiały do pobrania

Sprawdź próbkę naszych kompetencji.

video i prezentacje
  • video
  • Software Craftsmanship i Wzorce projektowe


    prezentacja z konferencji Javarsovia 2010

  • video
  • Domain Driven Design


    prezentacja z konferencji Confitura 2011

więcej materiałów
artykuły
  • pdf
  • Domain Driven Design – projektowanie złożonych modeli


    Artykuł opublikowany w Software Developer's Journal nr 08/2011

  • pdf
  • Modelowa ścieżka rozwoju kompetencji – Model Dreyfus


    Artykuł opublikowany w Software Developer's Journal nr 02/2010

więcej artykułów
bottega - [z j. włoskiego] pracownia;
w renesansie było to miejsce gdzie
spotykał się humanizm, sztuka i rzemiosło
© Bottega 2011 Wszelkie prawa zastrzeżone
Jesteśmy członkiem: 
ssepp
Projekt:  
hello
facebook blog twitter linkedin