Programowanie w JEE
Programowanie w JEE (EJB, JPA, JSF)
Kod szkolenia: JAVA-JEE
Szkolenie adresowane jest do osób, które w krótkim czasie chcą poznać JEE na poziomie umożliwiającym samodzielne wytwarzanie kodu.
Tak do programistów warstwy prezentacji, biznesowej, zasobów jak i integracji, chcących wytwarzać oprogramowanie w oparciu o standardy JEE (EJB, JPA, JSF, BeanValidation, CDI).
Celem szkolenie jest nabycie umiejętności programowania wszystkich warstw w oparciu o standardy JEE. Szkolenie łączy w sobie program kilku tygodni innych szkoleń, zatem naszym celem nie jest poznanie wszystkich niuansów technologicznych, a skupienie się na najważniejszych aspektach technologii, wykorzystywanych przez większość czasu wytwarzania oprogramowania w JEE.
Tak jak w zasadzie góry lodowej (20% na wierzchu, 80% pod spodem) - poznajemy te 20% API, które będzie potrzebne przez 80% czasu programowania. Wspomniana metafora nie oddaje prawdziwych proporcji poznanego API, niemniej oddaje ideę i cele szkolenia. Dlatego w ciągu 5 dni uczestnicy są w stanie poznać nie tylko technologie EJB, JPA, JSF i Bean Validation (co daje łącznie 11 dni osobnych szkoleń), a także CDI na poziomie umożliwiającym im swobodną pracę w rzeczywistych projektach.
Na szkoleniu świadomie pomijane, lub minimalizowane są tematyki zaawansowane, które są mniej przydatne w codziennej pracy a na których omówienie i przećwiczenie jest czas na szkoleniach dedykowanych.
5 dni, po 8 godzin. Łącznie 40 godzin(y) szkolenia.
Oczekiwane przygotowanie słuchaczy przed szkoleniem
Od uczestników wymaga się podstawowej znajomości HTML, SQL i umiejętności programowania w języku Java.
Polecane szkolenia uzupełniające
Szkolenie poprzedzające - Programowanie w Java (JAVA-PRO).
W naszej ofercie znajdują się również szkolenia uzupełniające w zakresie JEE:
JAVA-WYD,
JAVA-EJB,
JAVA-JSF,
JAVA-WS,
JAVA-JPA.
A także szkolenia na wyższych poziomach: projektowanie (JAVA-WZO) i architektura (JAVA-ARCH)
- Wprowadzenie do JEE
- 3 modele aplikacji
- Wymagania na systemy klasy Enterprise
- Standardy JEE
- Architektura Enterprise
- Komponenty EJB
- Sesyjne EJB
- MDB - Message Driven Bean
- Zarządzanie zależnościami
- Odnajdywanie elementów w JNDI
- Zależności EJB
- Zależności zasobów (JDBC, JMS, obiekty kontekstowe)
- Obiekty kontekstowe
- Transakcje
- Założenia - ACID
- Sterowanie transakcjami
- Transakcje rozproszone
- Przegląd pozostałych cech EJB
- Zadania czasowe i asynchroniczne
- Bezpieczeństwo
- Intercepting
- Produkcja EJB
- Paczka jar z EJB
- Paczka ear
- EJB w paczkach war (od EJB 3.1 - JEE6)
- Lokalizacja EJB a nazwa JNDI
- Podstawy JPA
- Czym jest ORM
- Tworzenie klas trwałych JPA
- Zarządzanie trwałością JPA
- Integracja z JPA
- Relacje w JPA
- Obiekty zagnieżdżone
- Relacje między obiektami
- Optymalizacje
- Relacje dwukierunkowe
- Kaskadowe zatwierdzanie zmian
- Kolekcje w relacjach typu wiele
- Dziedziczenie w JPA
- @Inheritance
- Strategie dziedziczenia InheritanceType
- Konsekwencje wydajnościowe
- Wyłączenie dziedziczenia ze schematu
- Obiektowy język zapytań JPQL
- Wykonywanie zapytań
- Składnia JPQL
- Zapytania nazwane
- Czym są zapytania natywne
- Definiowanie schematu bazy danych
- Typy
- Kolumny
- Automatyczne generowanie kluczy
- Klucze złożone
- Tabele
- Walidacja danych - Bean Validation (JEE6)
- Reguły w modelu
- Wbudowane reguły walidacji
- Cross Field Validation - walidacja względna
- Grupy ograniczeń
- Walidacja w API
- Integracja JPA z BeanValidation
- Podstawy JSF
- Spagetti komunikacyjne
- MVC
- Model obsługi żądania JSF
- Wymagania projektu JSF
- Podstawy tworzenia aplikacji w JSF
- Proste widoki
- Logika w JSF
- Nawigacja między widokami
- Podstawowe komponenty widoków JSF
- Biblioteki komponentów
- Komponenty wejściowe
- Komponenty wyjściowe
- Komponenty dekorujące
- Komponenty wywołania logiki
- Internacjonalizacja w JSF
- Inne komponenty JSF
- Podsumowanie komponentów nawigacji
- Budowa formularzy w JSF
- Formularze powiązane z logiką
- Język wyrażeń EL
- Konwersja danych
- Walidacja danych
- Komunikaty błędów
- Budowa widoków złożonych - Facelets
- Co daje Facelets
- Facelets w JSF 1.x a 2.0
- Idea szablonów
- Prosta cegiełka
- Szablon zewnętrzny
- Strona używająca szablonu
- Podstawy modelu zdarzeń
- Model nasłuchu zdarzeń
- Zdarzenia i listenery (FacesListener)
- Podpinanie listenerów
- AJAX i JSF
- Czym jest AJAX
- Natywne wsparcie (od JSF 2.0)
- Biblioteka ajax4jsf
- Komponenty RichFaces
- IceFaces jako konkurencja RichFaces
- API JSF
- Wstrzykiwanie zasobów do Managed Beans (od JSF 1.2)
- Metody cyklu życia Managed Beans
- Najważniejsze klasy i interfejsy w JSF
- Obiekty EL dostępu do API
- Wstrzykiwanie zależności - CDI
- Beany zarządzalne
- Wstrzykiwanie zależności
- Sterowanie wstrzykiwaniem
- Fabryki i destruktory obiektów zarządzanych
- Przegląd pozostałych elementów CDI