Szkolenie

J/WSPR Nowoczesne aplikacje internetowe oparte na Spring, Hibernate, Apache Wicket i Jetty

O szkoleniu

Celem szkolenia jest poznanie zasad budowania aplikacji internetowych z wykorzystaniem takich zagadnień jak: mapowanie obiektowo-relacyjne i tworzenie warstwy dostępu do danych za pomocą Hibernate, tworzenie warstwy usług przy pomocy kontenera Spring IoC, oprogramowanie interfejsu użytkownika dzięki komponentowemu frameworkowi Wicket.

W szczególności uczestnicy:

- poznają wzorzec Dependency Injection i nauczą się stosować go w praktyce przy użyciu kontenera IoC Spring Framework
- dowiedzą się jak konfigurować komponenty z poziomu deskryptorów XML Spring Framework i za pomocą adnotacji Java
- poznają zasadę mapowania relacyjno-obiektowego, i nauczą się projektować warstwę trwałości w oparciu o Hibernate 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
- nauczą się budować interfejs użytkownika przy pomocy Wicket
- nauczą się wykorzystywać gotowe komponenty biblioteczne Wicket jak również tworzyć własne
- dowiedzą się jak zwiększyć wygodę interfejsu użytkownika za pomocą AJAX
- poznają zagadnienia związane z bezpieczeństwem i niezawodnością aplikacji internetowych
- dowiedzą się jak uruchamiać stworzone w powyższy sposób aplikacje na serwerze Jetty
Kto powinien wziąć udział?
Szkolenie adresowane jest do programistów Java pragnących dowiedzieć się jak tworzyć aplikacje internetowe w oparciu o komponentowy model interfejsu użytkownika wspomagany o warstwę logiki biznesowej realizowanej przez Spring Framework korzystającej z dostępu do bazy danych poprzez mechanizm ORM (Hibernate).

Program szkolenia

I. Wprowadzenie - przegląd omawianych zagadnień
1. Warstwowa architektura aplikacji internetowych
2. Wzorce: IoC, DI, MVC
3. Warstwa danych: JDBC, myBatis, Hibernate, JPA
4. Warstwa webowa: JSF, AJAX, Wicket
5. Zagadnienia integracji systemów, webserwisy
6. Programowanie zorientowane aspektowo: AOP
7. Zagadnienia związane z testowaniem i bezpieczeństwem

II. Warstwa logiki biznesowej – Spring IoC
1. Wzorce Inversion of Control i Dependency Injection
2. Struktura aplikacji w Spring Framework
3. Uruchamianie kontenera
4. Definiowanie komponentów
• Konstruktory, fabryki
• Własności proste
• Własności złożone, kolekcje
• Łączenie kolekcji
• Dziedziczenie
• p-namespace
5. Specyfikacja zależności
6. Leniwa inicjalizacja
7. Autowiring
8. Zasoby
9. Współpraca z kontenerem
10. Zasięg komponentów
• singleton, prototype, request, session
• zasięgi własne
11. Wstrzykiwanie metod
12. Cykl życia fasolki i nasłuchiwanie
13. Zamykanie kontenera
14. Wydzielanie części konfiguracji do plików z właściwościami
15. Lokalizacja

III. Warstwa danych – Spring ORM i Hibernate
1. Koncepcja Mapowania relacyjno-obiektowego
2. Klasy Encyjne
• Klasy proste
• Klasy zagnieżdżone
• Pola i dostęp do pól
• Pola będące kolekcjami
3. Asocjacje
• Jednokierunkowe
• Dwukierunkowe
• Propagacja kaskadowa
4. Klucze
• Proste
• Złożone
• Automatyczne generowanie kluczy
5. Kompozycja obiektowa
6. Dziedziczenie
7. Nazewnictwo obiektów w bazie danych, własne systemy nazw
8. Kontekst trwałości:
• Zarządzany przez kontener i przez aplikację
• Konfiguracja kontekstu trwałości
• Integracja ze Spring Framework
• Konfiguracja DAO
9. Cykl życia encji
10. Operacje na danych
11. Transakcje
• Poziomy izolacji transakcji
• Podsystem transakcji w Spring
• Deklaratywna specyfikacja transakcji
• Blokowanie pesymistyczne i optymistyczne
• Długie konwersacje
12. Zapytania HQL
13. Criteria API
14. Nasłuchiwanie cyklu życia encji
15. Zagrożenia

IV. Warstwa web – Wicket
1. Podstawowa architektura aplikacji
• Konfiguracja
• Przetwarzanie requestów
• Rola kodu java
• Rola html
2. Koncepcja modelu danych
• Standardowy model
• Kontrola zasobów – detachable model
• Zagnieżdżanie modeli
3. Podstawowe komponenty UI
• Wyświetlanie tekstu
• Obsługa linków
• Repeaters
• Modyfikacja atrybutów komponentu
4. Obsługa formularzy
• Budowa formularza
• Komponenty formularza
• Obsługa submit
• Walidacja danych
• Informacje zwrotne
5. Grupowanie komponentów
• Dziedziczenie szablonów
• Panel
• Border
• Fragment

V. Ajax w Wicket
1. Obsługa Ajax w Wicket
• Komponenty z wbudowaną obsługą Ajax
• Dodawanie obsługi Ajax do własnych komponentów
• Obsługa formularzy za pomocą Ajax

VI. Tworzenie własnych komponentów
1. Korzyści z tworzenia własnych komponentów
• Praca z zasobami (css, skrypty)
• Rozszerzanie możliwości komponentów
• Własne komponenty formularzy
• Dystrybucja komponentów

Czas trwania

Zajęcia odbywają się w dni powszednie, w godzinach 9:00 - 17:00 (w tym 1h na lunch)
Czas trwania szkolenia: 5 dni * 7h

Prelegenci

Cytat
Doświadczeni trenerzy Sages.

Gdzie i kiedy

Warszawa 19 - 23 września 2011
Sages

02-796 Warszawa

Wąwozowa 11

woj. mazowieckie

Zapisz się

Cena 1
cena netto
4750 PLN
Cena zawiera:
  • materiały szkoleniowe, lunch, przerwy kawowe
Zapisz się

Organizator

Sages Sp. z o.o.
02-796 Warszawa
ul. Wąwozowa 11
woj. mazowieckie
FAQ

Najczęściej zadawane pytania

Prosimy o przejście do sekcji Zapisz się, aby wypełnić formularz zgłoszenia w wydarzeniu. Po jego wysłaniu organizator skontaktuje się celem potwierdzenia przyjęcia zgłoszenia i przekazania szczegółów organizacyjnych.

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, podstawowa znajomość HTML. Zalecana jest również umiejętność tworzenia aplikacji webowych w technologiach Servlet/JSP (do poznania na kursie J/WEB1).

W celu zgłoszenia się na szkolenie, prosimy o kontakt telefoniczny: 22.2035600
lub mailowy: j.ambroziak@sages.com.pl

Kontakt

Masz pytania? Napisz do nas

Wypełnij formularz

Uzupełnij pole
Wybierz termin wydarzenia
Uzupełnij pole
Uzupełnij pole
Uzupełnij wiadomość
Potwierdź, że nie jesteś botem.
Musisz zaakceptować regulamin.

Dane kontaktowe

Sages Sp. z o.o.
02-796 Warszawa ul. Wąwozowa 11
Darmowy biuletyn informacyjny

Zapisz się do newslettera i otrzymuj powiadomienia o nowych wydarzeniach!