technologia ejbi jpa

Transkrypt

technologia ejbi jpa
TECHNOLOGIA EJB I JPA
KOD: EJBJPA
PROFIL UCZESTNIKA
Uczestnik:
•
posiada minimum roczne doświadczenie w programowaniu w języku Java;
•
zna podstawy tworzenia aplikacji w Java SE / EE;
•
zna praktycznie relacyjne bazy danych;
•
zna założenia technologii Java EE;
•
chce poznać efektywne sposoby używania EJB i JPA w tworzeniu aplikacji internetowych.
KORZYŚCI ZE SZKOLENIA
1. Duża intensywność szkolenia – w niedługim czasie uczestnik poznaje najbardziej użyteczne
aspekty EJB i JPA, umożliwiające efektywne tworzenie aplikacji Java SE i Java EE z użyciem
baz danych.
2. Aplikacje korporacyjne tworzone są w uznanym i sprawdzonym standardzie – EJB i JPA to
wiodący standard w technologii Java.
3. Programista potrafi rozwiązywać problemy podczas tworzenia aplikacji – w trakcie
szkolenia uczymy, w jaki sposób radzić sobie z potencjalnymi problemami, które mogą
pojawić się w trakcie tworzenia projektu. Pokazujemy sprawdzone techniki i triki
programistyczne.
PARAMETRY SZKOLENIA
Czas trwania: 4 dni – 32 godziny
Forma zajęć: Ćwiczenia - 60%, wykład – 40%.
Wielkość grupy: ok. 12 osób.
SZCZEGÓŁOWY PROGRAM
Nabyte wiedza i umiejętności,
poruszane zagadnienia
Moduły szkoleniowe
•
EJB w architekturze Java EE
•
Przegląd EJB
Wprowadzenie
•
o
Komponenty sesyjne
o
Obiekty encyjne
o
Komponenty sterowane zdarzeniami
Przegląd
o
Usługi kontenera
o
Komponenty stanowe i bezstanowe
o
Definiowanie komponentu sesyjnego –
adnotacje EJB
o
Implementacja, interfejsy zdalny i lokalny
•
Model wdrożeniowy: ejb-jar, EAR, kontener
•
JNDI
o
Koncept JNDI
o
InitialContext
o
JNDI w praktyce
Komponenty sesyjne
Komponenty sterowane komunikatami (opcja)
•
Tworzenie klienta EJB3
•
Wstrzykiwanie zależności w EJB3
•
Korzystanie z zasobów poprzez kontener
•
Cykl życia komponentu sesyjnego oraz interceptory
•
Stanowe komponenty sesyjne – tworzenie, cykl życia,
aktywacja i pasywacja
•
Usługa mechanizmu Timer
•
Przegląd systemów opartych o komunikaty
o
Komunikacja poprzez kolejki i kanały
tematyczne
•
•
•
Przegląd JMS API
ConnectionFactory
o
Przesyłanie komunikatów JMS
o
Klient JMS
Komponenty MDB
o
Założenia
o
Adnotacja @MessageDriven
o
Przykład komponentu MDB
o
Konfiguracja activeConfig
Transakcje
Transakcje i bezpieczeństwo
•
o
o
Przegląd koncepcji związanych z systemami
transakcyjnymi
o
Deklaratywne zarządzanie transakcjami
o
Atrybuty transakcji
o
Zasięg transakcji
Przegląd zagadnień bezpieczeństwa w systemach
rozproszonych
o
Adnotacje @RolesAllowed, @PermitAll
o
Bezpieczeństwo obsługiwane w sposób
programistyczny
•
Wprowadzenie do JDBC
•
Uzyskanie połączenia
•
Klasy
o
Connection
o
Statement
o
PreparedStatement
o
ResultSet
Współpraca z relacyjnymi bazami danych
•
Wzorzec DAO
•
Koncepcja mapowania relacyjno-obiektowego
•
Podstawy mapowania
•
Przegląd JPA
•
Architektura warstw dostępu do danych
•
Mapowania oparte o POJO
•
Podstawy konfiguracji
•
EntityManager
Wprowadzenie do JPA
JPA w praktyce
Zapytania
o
Rola EntityManager w JPA
o
Cykl życia
o
Najważniejsze API
•
Jednostki trwałości (PersistenceUnit i ich konfiguracja
•
Operacje CRUD
•
Mapowanie klas – klasy encji
•
Mapowania
•
Generatory identyfikatorów
•
Typy wbudowane
•
Cykl życia obiektu trwałego
•
Wprowadzenie do Java Persistence Query Language
•
Interfejs Query
•
Tworzenie i używanie zapytań
•
Zapytania nazwane, projekcje i agregaty
•
Zapytania poprzez kryteria (Criteria API)
•
Przegląd relacji
•
Mapowanie kolekcji wartości
•
Mapowanie: 1:N, N:1, 1:1, N:N
•
Mapowanie relacji
Relacje i dziedziczenie
•
Relacje jedno- i dwukierunkowe
•
Inwersja w relacji
•
Kaskadowość
•
Wczesne i opóźnione ładowanie
•
Mapowanie dziedziczenia
o
Strategia „tabela na klasę”
o
Strategia „tabela na podklasę”
o
Strategia „tabela na klasę konkretną”
•
Techniki optymalnego mapowania
•
Cache (zapytań, encji)
•
Pułapki lazy loadingu (n+1 select problem)
•
Unikanie pobierania nadmiernych danych - rozwiązania
•
Blokowanie optymistyczne i wersjonowanie
•
Cache
•
Wydajność
•
Zagadnienia projektowe
Optymalizacja
Zagadnienia zaawansowane