Head First Servlets & JSP. Edycja polska. Wydanie II (Rusz głową!) [2 ed.] 9788324660575

Wykorzystaj innowacyjne metody nauki i zacznij tworzyć dynamiczne aplikacje internetowe! Jak korzystać z technologii JSP

503 104 19MB

Polish Pages [916] Year 2009

Report DMCA / Copyright

DOWNLOAD FILE

Head First Servlets & JSP. Edycja polska. Wydanie II (Rusz głową!) [2 ed.]
 9788324660575

Table of contents :
Spis treści
Wprowadzenie
Dla kogo jest ta książka?
Wiemy, co sobie myślisz
Metapoznanie
Oto, co zrobiliśmy:
Zmuś swój mózg do posłuszeństwa
Czego potrzebujesz, aby skorzystać z tej książki?
Zdajemy egzamin certyfikujący
Redaktorzy techniczni
Podziękowania
1. Do czego służą serwlety i strony JSP?
Cele egzaminu
Czym zajmuje się serwer WWW i klient oraz jak się ze sobą porozumiewają?
Dwuminutowy kurs języka HTML
Czym jest protokół HTTP?
Anatomia żądań GET i POST oraz odpowiedzi protokołu HTTP
Lokalizacja stron WWW przy użyciu adresów URL
Serwery WWW, strony statyczne i CGI
Serwlety bez tajemnic: pisanie, wdrażanie i uruchamianie serwletów
Technologia JSP jest efektem wprowadzenia języka Java do kodu HTML
2. Architektura aplikacji internetowej
Cele egzaminu
Czym jest kontener oraz co nam daje?
Jak to wszystko wygląda w kodzie (co sprawia, że serwlet jest serwletem)?
Określanie nazw serwletów i kojarzenie ich z adresami URL w deskryptorze wdrożenia
Opowiadanie: Bob buduje witrynę swatającą (wprowadzenie do wzorca MVC)
Ogólne informacje i przykład wzorca model-widok-kontroler (MVC)
„Działający” deskryptor wdrożenia (DD)
Jaka w tym wszystkim jest rola platformy J2EE?
3. Minipodręcznik MVC
Cele egzaminu
Zbudujmy aplikację internetową MVC; pierwszy projekt
Tworzenie środowisk wytwarzania i wdrażania aplikacji
Tworzenie i testowanie kodu HTML początkowej strony formularza
Tworzenie deskryptora wdrożenia (DD)
Tworzenie, kompilacja, wdrażanie i testowanie serwletu kontrolera
Projektowanie, tworzenie i testowanie komponentu modelu
Rozszerzanie kodu serwletu o wywołanie modelu
Tworzenie i wdrażanie komponentów widoku (to właśnie JSP)
Rozszerzenie serwletu o wywołanie strony JSP
4. Być serwletem
Cele egzaminu
Życie serwletu w kontenerze
Inicjalizacja i wątki serwletu
FAKTYCZNYM celem serwletu jest obsługa żądań GET i POST
Historia pewnego niepowtarzalnego żądania
Co sprawia, że przeglądarka wysyła albo żądanie GET, albo żądanie POST?
Wysyłanie i stosowanie parametrów
Dobrze, wiemy już, do czego służy klasa Request… przyjrzyjmy się teraz klasie Response
Możesz ustawiać nagłówki odpowiedzi, możesz dodawać nagłówki odpowiedzi
Przekierowania kontra przydział żądań
Przegląd klasy HttpServletResponse
5. Być aplikacją internetową
Cele egzaminu
Wybawieniem są parametry inicjalizacji i obiekt ServletConfig
Jak strona JSP może uzyskać dostęp do parametrów inicjalizacji serwletu?
Wybawieniem są parametry inicjalizacji kontekstu
Porównanie obiektów ServletConfig oraz ServletContext
Chcemy obiektu ServletContextListener
Przewodnik: prosty obiekt ServletContextListener
Kompilacja, wdrażanie i testowanie obiektu nasłuchującego
Kompletna historia — obiekt nasłuchujący kontekstu
Osiem obiektów nasłuchujących nie tylko zdarzeń kontekstu
Czym dokładnie jest atrybut
Interfejs API atrybutów — ciemna strona atrybutów
Zasięg kontekstu nie zapewnia bezpieczeństwa wątków!
Analiza tego problemu w zwolnionym tempie...
Próba synchronizacji
Czy atrybuty sesji gwarantują bezpieczeństwo przetwarzania wielowątkowego?
Interfejs SingleThreadModel
Tylko atrybuty żądania i zmienne lokalne zapewniają bezpieczną wielowątkowość!
Atrybuty żądania i przydział żądań
6. Stan konwersacyjny
Cele egzaminu
To będzie dłuższa konwersacja, czyli jak działają sesje
Identyfikatory sesji, ciasteczka i pozostałe podstawy działania sesji
Przepisywanie adresów URL, sposób rozwiązania problemu
Kiedy sesje stają się nieaktualne — eliminowanie zbędnych sesji
Czy ciasteczka mogą mieć także zastosowania inne niż obsługa sesji?
Najważniejsze momenty w życiu obiektu HttpSession
Nie zapominaj o interfejsie HttpSessionBindingListener
Migracja sesji
Przykłady klas nasłuchujących
7. Być stroną JSP
Cele egzaminu
Tworzymy prostą stronę JSP wykorzystującą zmienną out i dyrektywę page
Wyrażenia, zmienne i deklaracje JSP
Czas zapoznać się z wygenerowanym serwletem
Zmienna out nie jest jedynym obiektem domyślnym…
Cykl życia i inicjalizacja stron JSP
Skoro już poruszyliśmy ten temat… porozmawiajmy o trzech dyrektywach
Czy skryptlety można uznać za niebezpieczne? Oto EL
Ale zaczekaj… nie widzieliśmy jeszcze akcji
8. Strony bezskryptowe
Cele egzaminu
Które atrybuty są komponentami JavaBean?
Standardowe akcje: useBean, getProperty oraz setProperty
Czy można tworzyć polimorficzne referencje do komponentów?
Rozwiązaniem jest użycie atrybutu param
Konwersja właściwości
Uratował nas język wyrażeń (EL)
Stosowanie operatora kropki (.) do uzyskiwania dostępu do właściwości i map wartości
Operator [] stwarza dodatkowe możliwości (listy, tablice…)
Więcej szczegółów o operatorach kropki (.) oraz []
Obiekty domyślne języka EL
Funkcje języka EL i obsługa wartości null
Szablony wielokrotnego użytku — dwa rodzaje „dołączania”
Standardowa akcja
Ona nie wie jeszcze o znacznikach JSTL (zapowiedź)
Przegląd standardowych akcji i wyrażeń dołączania
9. Potęga znaczników niestandardowych
Cele egzaminu
Pętle bez skryptów,
Kontrola warunkowa z użyciem znaczników oraz
Zastosowanie znaczników i
Znacznik , czyli trzeci sposób dołączania treści
Modyfikowanie dołączanej zawartości
Realizacja tego samego zadania za pomocą znacznika
Znacznik jako narzędzie realizacji wszystkich zadań związanych z obsługą hiperłączy
Tworzenie własnych stron o błędach
Znacznik , który jest jak… konstrukcja try-catch
Co będzie, jeśli uznamy za niezbędne użycie znacznika SPOZA biblioteki JSTL?
Zwróć uwagę na element
Co może się znaleźć w ciele znacznika
Klasa obsługująca znacznik, deskryptor TLD i strona JSP
Podelement elementu taglib jest tylko nazwą, nie lokalizacją
Kiedy strona JSP wykorzystuje więcej niż jedną bibliotekę znaczników
10. Kiedy JSTL nie wystarcza…
Cele egzaminu
Pliki znaczników — podobnie jak znacznik include, tylko lepiej
Gdzie kontener szuka plików znaczników?
Proste klasy obsługujące znaczniki
Prosty znacznik z zawartością
Co zrobić, jeśli w zawartości znacznika pojawia się wyrażenie?
Wciąż musimy znać klasyczne klasy obsługujące znaczniki niestandardowe
Bardzo prosta, klasyczna klasa obsługi znacznika niestandardowego
Cykl życia znacznika klasycznego zależy od zwracanych wartości
Interfejs IterationTag pozwala na wielokrotne przetwarzanie zawartości znacznika
Wartości domyślne zwracane przez metody klasy TagSupport
Interfejs DynamicAttributes
Interfejs BodyTag udostępnia dwie kolejne metody
A co, jeśli znaczniki współpracują ze sobą?
Interfejs programowy PageContext dla klas obsługi znaczników
11. Jak wdrożyć aplikację internetową?
Cele egzaminu
Podstawowe zagadnienia związane z wdrażaniem różnych elementów aplikacji
Pliki WAR
Jak NAPRAWDĘ działają odwzorowania serwletów?
Konfiguracja plików powitalnych w deskryptorze wdrożenia
Konfiguracja stron błędów w deskryptorze wdrożenia
Konfigurowanie inicjalizacji serwletu w deskryptorze wdrożenia
Tworzenie stron JSP zgodnych z zasadami konstrukcji dokumentów XML: dokumenty JSP
12. Zachowaj je w tajemnicy, ukryj je w bezpiecznym miejscu
Cele egzaminu
Wielka Czwórka świata zabezpieczeń serwletów
Jak realizować uwierzytelnianie w świecie protokołu HTTP?
Dziesięć najważniejszych powodów przemawiających za deklaratywnym określaniem bezpieczeństwa
Kto implementuje zabezpieczenia aplikacji internetowej?
Autoryzacja: role i ograniczenia
CZTERY typy uwierzytelniania
Zabezpieczanie przesyłanych informacji — protokół HTTPS śpieszy z pomocą
Jak należy wybiórczo i deklaratywnie implementować poufność i integralność danych?
13. Potęga filtrów
Cele egzaminu
Tworzenie filtra śledzącego żądania
Cykl życia filtrów
Deklarowanie i określanie kolejności filtrów
Kompresja wyników przy wykorzystaniu filtra operującego na odpowiedzi
Opakowania są świetne!
Prawdziwy kod filtra kompresji odpowiedzi
Kod opakowania kompresji odpowiedzi
14. Korporacyjne wzorce projektowe
Cele egzaminu
Sprzętowe i programowe argumenty na rzecz wzorów projektowych
Przegląd zasad związanych z projektowaniem oprogramowania
Wzorce wspomagają zdalne komponenty modelu
JNDI oraz RMI — krótka prezentacja
Delegat biznesowy jest obiektem pośredniczącym
Czas poznać wzorzec Transfer Object?
Wzorce warstwy biznesowej — krótki przegląd
Nasz pierwszy wzorzec po raz wtóry — MVC
Tak! To Struts (i wzorzec Front Controller) w zarysie
Przystosowanie aplikacji piwnej do korzystania z frameworku Struts
Przegląd wzorców projektowych
A. Bar kawowy
Końcowy egzamin próbny
Odpowiedzi
Skorowidz

Polecaj historie