J2EE Wzorce projektowe.pdf

(459 KB) Pobierz
C:\Andrzej\PDF\ABC nagrywania p³yt CD\1 strona.cdr
IDZ DO
PRZYK£ADOW Y ROZDZIA£
J2EE. Wzorce
SPIS TRECI
projektowe
KATALOG KSI¥¯EK
Autorzy: Deepak Alur, John Crupi, Dan Malks
T³umaczenie: Maciel Gorywoda
ISBN: 83-7197-988-6
Tytu³ orygina³ u: Core J2EE Patterns
Format: B5, stron: 360
KATALOG ONLINE
ZAMÓW DRUKOWANY KATALOG
TWÓJ KOSZYK
DODAJ DO KOSZYKA
W ci¹gu ostatnich kilku lat Java 2 Enterprise Edition sta³a siê standardow¹ platform¹
do budowy skomplikowanych aplikacji. Poniewa¿ jest ona rozbudowanym rodowiskiem
programistycznym, pozwalaj¹cym projektowaæ i programowaæ potê¿ne aplikacje,
nie jest ³atwa w obs³udze. W ksi¹¿ce, któr¹ trzymasz w rêku, dowiadczeni architekci
Sun Java Center, organizacji konsultingowej, dzia³aj¹cej w ramach Sun Java, dziel¹ siê
z czytelnikiem swoim dowiadczeniem w projektowaniu aplikacji opartych na
technologii J2EE.
Autorzy skupiaj¹ siê na wzorcach projektowych, opartych na najwa¿niejszych
technologiach J2EE, takich jak Java Server Pages (JSP), serwlety, Enterprise
JavaBeans (EJB) oraz Java Message Service (JMS). Omawiane s¹ równie¿ inne
technologie Javy, wa¿ne dla prawid³owej implementacji wzorców, takie jak JDBC i JNDI.
Katalog zawieraj¹cy wzorce projektowe J2EE dokumentuje i prezentuje najlepsze
sposoby wykorzystania tych technologii. To jednak nie wszystko. Ksi¹¿ka omawia
równie¿:
• wiele strategii przydatnych przy projektowaniu warstw prezentacyjnej
i biznesowej;
• identyfikacjê b³êdnych technik znajdywanych w warstwach prezentacyjnej,
biznesowej i integracyjnej oraz propozycje rozwi¹zañ wykorzystuj¹cych wzorce
projektowe oraz sposoby przebudowy systemów;
• metody przebudowy dla poszczególnych warstw aplikacji oraz techniki
zastêpowania b³êdnych implementacji prawid³owymi;
• przyk³adowy kod programów opartych na omawianych strategiach i wzorcach
projektowych.
CENNIK I INFORMACJE
ZAMÓW INFORMACJE
O NOWOCIACH
ZAMÓW CENNIK
CZYTELNIA
FRAGMENTY KSI¥¯EK ONLINE
Wydawnictwo Helion
ul. Chopina 6
44-100 Gliwice
tel. (32)230-98-63
e-mail: helion@helion.pl
319877841.003.png 319877841.004.png 319877841.005.png 319877841.006.png 319877841.001.png 319877841.002.png
Spis treci
Podzikowania
9
Przedsłowie I
11
Przedsłowie II
12
Wstp
13
Cz I Wzorce i J2EE
19
Rozdział 1. Wprowadzenie 21
Czym jest J2EE? .................................................................................................................... 21
Czym s wzorce?................................................................................................................... 22
Historia ............................................................................................................................ 22
Definicja wzorca............................................................................................................... 23
Kategorie wzorców ........................................................................................................... 24
Katalog wzorców J2EE ........................................................................................................... 25
Nieprzerwana ewolucja .................................................................................................... 25
Jak korzysta& z katalogu wzorców J2EE ........................................................................... 26
Korzy(ci wynikajce z u)ywania wzorców ......................................................................... 27
Wzorce, struktury oraz powtórne wykorzystanie..................................................................... 29
Podsumowanie ...................................................................................................................... 29
Rozdział 2. Omówienie platformy J2EE 31
Krótko o historii..................................................................................................................... 31
Serwery aplikacji — nowe pokolenie................................................................................ 32
Wła(ciwo(ci technologii Javy ........................................................................................... 33
Powstanie platformy J2EE................................................................................................ 34
Ocena warto(ci J2EE ....................................................................................................... 34
Platforma J2EE ...................................................................................................................... 35
Architektura J2EE............................................................................................................. 35
Java 2 Standard Edition................................................................................................... 36
Komponenty i pojemniki aplikacji J2EE ............................................................................ 37
Serwisy standardowe....................................................................................................... 38
Role w platformie J2EE .................................................................................................... 39
Pliki opisów rozmieszczenia............................................................................................. 40
Wzorce J2EE a platforma J2EE .............................................................................................. 41
Podsumowanie ...................................................................................................................... 42
 
4 J2EE. Wzorce projektowe
Cz II Elementy projektów, niewłaciwe techniki oraz przebudowa systemu 43
Rozdział 3. Elementy projektów oraz niewła%ciwe techniki warstwy prezentacyjnej 45
Elementy projektowania warstwy prezentacyjnej.................................................................... 45
Zarzdzanie sesj ............................................................................................................ 45
Kontrola praw dost;pu klienta ......................................................................................... 48
Walidacja ......................................................................................................................... 52
Wła(ciwo(ci klas pomocniczych — integralno(& i konsekwencja..................................... 54
Niewła(ciwe techniki zarzdzania warstw prezentacyjn...................................................... 56
Kontrola kodu w widokach wielokrotnych......................................................................... 57
Udost;pnianie struktur danych warstwy prezentacyjnej warstwie komercyjnej ................. 57
Udost;pnianie struktur danych warstwy prezentacyjnej obiektom rodzimym.................... 58
Powielanie wysyłanych formularzy.................................................................................... 58
Bezpo(rednie udost;pnianie wa)nych zasobów............................................................... 59
Zało)enie, )e <jsp:setProperty> b;dzie resetowa& własno(ci komponentu ..................... 59
Tworzenie „grubych” sterowników.................................................................................... 60
Rozdział 4. Elementy projektów oraz niewła%ciwe techniki warstwy komercyjnej 61
Elementy projektowania warstwy komercyjnej ....................................................................... 61
Korzystanie z komponentów sesyjnych ............................................................................ 61
Korzystanie z komponentów jednostkowych .................................................................... 65
Pami;& podr;czna dla odległych referencji i uchwytów EnterpriseBeans ......................... 67
Niewła(ciwe techniki zarzdzania warstw komercyjn ......................................................... 67
Mapowanie modelu obiektu bezpo(rednio na model jednostki ........................................ 67
Mapowanie modelu relacji bezpo(rednio na model jednostki .......................................... 68
Mapowanie ka)dego rodzaju wykorzystania na komponent sesyjny ................................. 69
Obsługa wszystkich atrybutów komponentu poprzez metody zmiany lub dost;pu............ 69
Umieszczenie serwisu aktualizujcego w aplikacjach klienckich...................................... 69
U)ywanie jednostki w charakterze obiektu tylko do odczytu............................................. 70
U)ywanie jednostek w charakterze obiektów wyspecjalizowanych.................................... 71
Przechowywanie pełnej struktury obiektów zale)nych od jednostki .................................. 72
Niepotrzebne ujawnianie wyjtków zwizanych z EJB ....................................................... 72
U)ywanie metod przeszukujcych komponentów jednostkowych
do zwracania du)ych bloków danych ............................................................................. 73
Klient sortujcy dane dla komponentów komercyjnych .................................................... 73
U)ywanie EnterpriseBeans do obsługi transakcji czasochłonnych ................................... 74
Niezachowujce stanu komponenty odtwarzaj stan konwersacji dla ka)dego wywołania...... 74
Rozdział 5. Sposoby przebudowy J2EE 77
Sposoby przebudowy warstwy prezentacyjnej ........................................................................ 77
Korzystanie ze sterownika ............................................................................................... 77
Korzystanie z synchronizatora.......................................................................................... 79
Wyodr;bnienie procedur rozproszonych ........................................................................... 83
Ukrycie danych warstwy prezentacyjnej przed warstw komercyjn.................................. 89
Usuwanie konwersji z widoku........................................................................................... 92
Ukrywanie zasobów przed klientem ................................................................................. 95
Sposoby przebudowy warstwy komercyjnej i integracyjnej ..................................................... 98
Zamkni;cie komponentów jednostkowych w sesji............................................................ 98
Korzystanie z delegatów komercyjnych .......................................................................... 100
Łczenie komponentów sesyjnych ................................................................................. 101
Ograniczanie komunikacji mi;dzyjednostkowej .............................................................. 102
Przesuni;cie procedur komercyjnych do sesji ................................................................ 104
Spis tre%ci 5
Ogólne sposoby przebudowy ............................................................................................... 105
Separacja kodu dost;pu do danych............................................................................... 105
Przebudowa architektury warstw .................................................................................... 107
Korzystanie z zestawu połczeG..................................................................................... 109
Cz III Katalog wzorców J2EE
111
Rozdział 6. Omówienie wzorców J2EE 113
Czym jest wzorzec?........................................................................................................ 113
Identyfikacja wzorca....................................................................................................... 114
Podej(cie warstwowe .......................................................................................................... 115
Wzorce J2EE........................................................................................................................ 117
Wzorce warstwy prezentacyjnej ...................................................................................... 117
Wzorce warstwy komercyjnej.......................................................................................... 117
Wzorce warstwy integracyjnej......................................................................................... 117
Wprowadzenie do katalogu.................................................................................................. 118
Terminologia .................................................................................................................. 118
Korzystanie z UML ......................................................................................................... 121
Szablon wzorców............................................................................................................ 122
Relacje pomi;dzy wzorcami J2EE ........................................................................................ 123
Relacje do innych znanych wzorców .................................................................................... 126
Mapa wzorców..................................................................................................................... 126
Podsumowanie .................................................................................................................... 130
Rozdział 7. Wzorce warstwy prezentacyjnej 131
Filtr przechwytujcy.............................................................................................................. 131
Kontekst ........................................................................................................................ 131
Problem ......................................................................................................................... 131
Siły................................................................................................................................. 132
Rozwizanie ................................................................................................................... 132
Konsekwencje................................................................................................................ 145
Relacje z innymi wzorcami ............................................................................................. 146
Sterownik frontalny.............................................................................................................. 146
Kontekst ........................................................................................................................ 146
Problem ......................................................................................................................... 146
Siły................................................................................................................................. 147
Rozwizanie ................................................................................................................... 147
Konsekwencje................................................................................................................ 156
Relacje z innymi wzorcami ............................................................................................. 156
Pomocnik widoku ................................................................................................................ 157
Kontekst ........................................................................................................................ 157
Problem ......................................................................................................................... 157
Siły................................................................................................................................. 157
Rozwizanie ................................................................................................................... 158
Konsekwencje................................................................................................................ 169
Relacje z innymi wzorcami ............................................................................................. 169
Widok zło)ony...................................................................................................................... 170
Kontekst ........................................................................................................................ 170
Problem ......................................................................................................................... 170
Siły................................................................................................................................. 170
Rozwizanie ................................................................................................................... 170
6 J2EE. Wzorce projektowe
Konsekwencje................................................................................................................ 177
Przykładowy kod............................................................................................................. 178
Relacje z innymi wzorcami ............................................................................................. 179
Struktura usługa-pracownik ................................................................................................. 180
Kontekst ........................................................................................................................ 180
Problem ......................................................................................................................... 180
Siły................................................................................................................................. 180
Rozwizanie ................................................................................................................... 181
Konsekwencje................................................................................................................ 185
Przykładowy kod............................................................................................................. 186
Relacje z innymi wzorcami ............................................................................................. 191
Widok przekaLnika............................................................................................................... 191
Kontekst ........................................................................................................................ 191
Problem ......................................................................................................................... 192
Siły................................................................................................................................. 192
Rozwizanie ................................................................................................................... 192
Konsekwencje................................................................................................................ 197
Przykładowy kod............................................................................................................. 198
Relacje z innymi wzorcami ............................................................................................. 202
Rozdział 8. Wzorce warstwy komercyjnej 203
Delegat komercyjny ............................................................................................................. 203
Kontekst ........................................................................................................................ 203
Problem ......................................................................................................................... 203
Siły................................................................................................................................. 204
Rozwizanie ................................................................................................................... 204
Konsekwencje................................................................................................................ 208
Przykładowy kod............................................................................................................. 209
Relacje z innymi wzorcami ............................................................................................. 213
Obiekt warto(ci ................................................................................................................... 213
Kontekst ........................................................................................................................ 213
Problem ......................................................................................................................... 213
Siły................................................................................................................................. 214
Rozwizanie ................................................................................................................... 214
Konsekwencje................................................................................................................ 223
Przykładowy kod............................................................................................................. 224
Relacje z innymi wzorcami ............................................................................................. 235
Fasada sesji ........................................................................................................................ 235
Kontekst ........................................................................................................................ 235
Problem ......................................................................................................................... 235
Siły................................................................................................................................. 237
Rozwizanie ................................................................................................................... 237
Konsekwencje................................................................................................................ 241
Przykładowy kod............................................................................................................. 243
Relacje z innymi wzorcami ............................................................................................. 249
Jednostka zło)ona............................................................................................................... 250
Kontekst ........................................................................................................................ 250
Problem ......................................................................................................................... 250
Siły................................................................................................................................. 252
Rozwizanie ................................................................................................................... 253
Konsekwencje................................................................................................................ 259
Zgłoś jeśli naruszono regulamin