Spring Framework Profesjonalne tworzenie oprogramowania w Javie.pdf
(
528 KB
)
Pobierz
Spring Framework. Profesjonalne tworzenie oprogramowania w Javie
IDZ DO
PRZYK£ADOW
Y ROZDZIA£
Spring Framework.
SPIS TREŒCI
Profesjonalne tworzenie
oprogramowania w Javie
KATALOG KSI¥¯EK
KATALOG ONLINE
Autorzy: Rod Johnson, Juergen Hoeller, Alef
Arendsen, Thomas Risberg, Colin Sampaleanu
T³umaczenie: Piotr Rajca, Miko³aj Szczepaniak
ISBN: 83-246-0208-9
Tytu³ orygina³
u:
Professional Java Development
with the Spring Framework
Format: B5, stron: 824
ZAMÓW DRUKOWANY KATALOG
TWÓJ KOSZYK
DODAJ DO KOSZYKA
Spring to szkielet wytwarzania aplikacji (framework), dziêki któremu proces budowania
oprogramowania w jêzyku Java dla platformy J2EE staje siê znacznie prostszy
i efektywniejszy. Spring oferuje us³ugi, które mo¿na z powodzeniem u¿ywaæ
w wielu œrodowiskach — od apletów po autonomiczne aplikacje klienckie, od aplikacji
internetowych pracuj¹cych w prostych kontenerach serwletów po z³o¿one systemy
korporacyjne pracuj¹ce pod kontrol¹ rozbudowanych serwerów aplikacji J2EE.
Spring pozwala na korzystanie z mo¿liwoœci programowania aspektowego, znacznie
sprawniejsz¹ obs³ugê relacyjnych baz danych, b³yskawiczne budowanie graficznych
interfejsów u¿ytkownika oraz integracjê z innymi szkieletami takimi, jak Struts czy JSF.
Ksi¹¿ka „Spring Framework. Profesjonalne tworzenie oprogramowania w Javie” odkryje
przed Tob¹ wszystkie tajniki stosowania Springa w procesie wytwarzania systemów
informatycznych dla platformy J2EE. Dowiesz siê, jak efektywnie korzystaæ
z najwa¿niejszych sk³adników szkieletu Spring i poznasz ich rolê w budowaniu aplikacji.
Nauczysz siê nie tylko tego, co mo¿na zrealizowaæ za pomoc¹ poszczególnych us³ug,
ale tak¿e tego, w jaki sposób zrobiæ to najlepiej. W kolejnych æwiczeniach
przeanalizujesz proces tworzenie kompletnej aplikacji w oparciu o Spring.
W ksi¹¿ce poruszono m.in. tematy:
Struktura szkieletu Spring
Tworzenie komponentów i definiowanie zale¿noœci pomiêdzy nimi
Testowanie aplikacji i testy jednostkowe
Programowanie aspektowe w Spring
Po³¹czenia z relacyjnymi bazami danych za pomoc¹ JDBC
Zarz¹dzanie transakcjami
Korzystanie z mechanizmu Hibernate
Zabezpieczanie aplikacji
Stosowanie szkieletu Web MVC
Przekonaj siê, jak Spring mo¿e zmieniæ Twoj¹ pracê nad tworzeniem aplikacji J2EE
CENNIK I INFORMACJE
ZAMÓW INFORMACJE
ONOWOŒCIACH
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
Wstęp ......................................................................................................................................................... 19
Rozdział 1. Wprowadzenie do Springa .................................................................................................... 27
Dlaczego Spring? ........................................................................................................ 27
Problemy związane z tradycyjnym podejściem do programowania dla platformy J2EE ... 27
Lekkie frameworki .................................................................................................. 31
Podstawowe składniki Springa ................................................................................ 32
Zalety Springa ............................................................................................................ 34
Kontekst Springa ........................................................................................................ 37
Technologie ........................................................................................................... 37
Techniki ................................................................................................................ 51
Związki z pozostałymi frameworkami ....................................................................... 52
Budowa architektury aplikacji opartej na frameworku Spring ........................................... 56
Szerszy kontekst ................................................................................................... 57
Trwałość i integracja .............................................................................................. 58
Obiekty usług biznesowych ..................................................................................... 62
Prezentacja ........................................................................................................... 63
Przyszłość .................................................................................................................. 65
Harmonogram wydawania kolejnych wersji ............................................................... 66
Ewolucja Javy i platformy J2EE ................................................................................ 66
Współczesny kontekst technologiczny ...................................................................... 69
Standardy i otwarty dostęp do kodu źródłowego ....................................................... 69
Projekt Spring i społeczność programistów .................................................................... 70
Historia ................................................................................................................. 71
Krótkie omówienie modułów Springa ....................................................................... 73
Obsługiwane środowiska ........................................................................................ 78
Podsumowanie ........................................................................................................... 78
Rozdział 2. Fabryka komponentów i kontekst aplikacji ......................................................................... 81
Odwracanie kontroli i wstrzykiwanie zależności .............................................................. 82
Różne formy wstrzykiwania zależności ..................................................................... 85
Wybór pomiędzy wstrzykiwaniem przez metody ustawiające
a wstrzykiwaniem przez konstruktory ..................................................................... 89
4
Spring Framework. Profesjonalne tworzenie oprogramowania w Javie
Kontener .................................................................................................................... 91
Fabryka komponentów ........................................................................................... 91
Kontekst aplikacji .................................................................................................. 93
Uruchamianie kontenera ........................................................................................ 95
Korzystanie komponentów uzyskiwanych z fabryki ..................................................... 97
Konfiguracja komponentów w formacie XML ............................................................. 98
Podstawowa definicja komponentu .......................................................................... 99
Definiowanie zależności komponentów .................................................................. 102
Zarządzanie cyklem życia komponentu ................................................................... 113
Abstrakcja dostępu do usług i zasobów ................................................................. 116
Wielokrotne wykorzystywanie tych samych definicji komponentów ............................ 122
Stosowanie postprocesorów do obsługi niestandardowych komponentów i kontenerów .. 126
Podsumowanie ......................................................................................................... 133
Rozdział 3. Zaawansowane mechanizmy kontenera ...........................................................................135
Abstrakcje dla niskopoziomowych zasobów ................................................................. 136
Kontekst aplikacji jako implementacja interfejsu ResourceLoader ............................ 136
Kontekst aplikacji jako źródło komunikatów ........................................................... 139
Zdarzenia aplikacji .................................................................................................... 142
Zarządzanie kontenerem ............................................................................................ 145
Ścieżki lokalizacji zasobów przekazywane do konstruktorów implementacji
interfejsu ApplicationContext .............................................................................. 145
Deklaratywne korzystanie z kontekstów aplikacji .................................................... 147
Podział definicji kontenera na wiele plików ............................................................. 149
Strategie obsługi modułów ................................................................................... 151
Singletony obsługujące dostęp do kontenera ......................................................... 154
Pomocnicze komponenty fabrykujące .......................................................................... 155
Komponent PropertyPathFactoryBean .................................................................... 155
Komponent FieldRetrievingFactoryBean ................................................................. 156
Komponent MethodInvokingFactoryBean ................................................................ 157
Edytory właściwości oferowane w ramach Springa ........................................................ 158
Strategie testowania ................................................................................................. 159
Testy jednostkowe ............................................................................................... 160
Testy wykorzystujące kontener Springa .................................................................. 163
Rozwiązania alternatywne względem konfiguracji w formacie XML ................................. 166
Definicje konfiguracji w plikach właściwości ........................................................... 166
Programowe definicje komponentów ...................................................................... 168
Pozostałe formaty ................................................................................................ 168
Materiały dodatkowe ................................................................................................. 169
Podsumowanie ......................................................................................................... 169
Rozdział 4. Spring i AOP ...........................................................................................................................171
Cele ......................................................................................................................... 171
Założenia ................................................................................................................. 173
Przykład ................................................................................................................... 173
Framework programowania aspektowego Springa ........................................................ 177
Łańcuch przechwytywania ..................................................................................... 178
Zalety i wady ....................................................................................................... 178
Rada .................................................................................................................. 180
Przecięcia ........................................................................................................... 186
Spis treści
5
Doradcy .............................................................................................................. 193
Integracja z kontenerem IoC Springa ..................................................................... 195
Analizowanie i zmiana stanu pośrednika w czasie wykonywania programu ................ 212
Programowe tworzenie pośredników ...................................................................... 213
Korzystanie z zaawansowanych funkcji Spring AOP ....................................................... 214
Źródła obiektów docelowych ................................................................................. 214
Wczesne kończenie łańcucha przechwytywania ....................................................... 221
Stosowanie wprowadzeń ...................................................................................... 221
Udostępnianie bieżącego pośrednika .................................................................... 224
Udostępnianie bieżącego egzemplarza interfejsu MethodInvocation ......................... 225
Zrozumienie typów pośredników ............................................................................ 226
Diagnozowanie i testowanie .................................................................................. 228
Rozmaitości ........................................................................................................ 231
Integracja z innymi frameworkami programowania aspektowego ................................... 234
Cele ................................................................................................................... 235
Integracja z narzędziem AspectJ ............................................................................ 235
AspectWerkz ....................................................................................................... 242
Materiały dodatkowe ................................................................................................. 243
Podsumowanie ......................................................................................................... 243
Rozdział 5. Obiekty DAO i framework Spring JDBC ............................................................................. 245
Wzorzec obiektów dostępu do danych ......................................................................... 246
Wprowadzenie do Spring JDBC ................................................................................... 248
Motywacja
—
problemy bezpośredniego korzystania z interfejsu JDBC ...................... 248
W czym może pomóc Spring? ................................................................................ 251
Prosty przykład .................................................................................................... 251
Budowa warstwy dostępu do danych dla przykładowej aplikacji ..................................... 253
Model danych stosowany w przykładowej aplikacji .................................................. 253
Źródło danych ...................................................................................................... 254
Tłumaczenie wyjątków .......................................................................................... 256
Operacje klasy JdbcTemplate ..................................................................................... 259
Stosowanie metod zwrotnych ................................................................................ 259
Metody pomocnicze klasy JdbcTemplate ................................................................ 261
Wykonywanie prostych zapytań za pośrednictwem klasy JdbcTemplate ..................... 262
Wykonywanie prostych aktualizacji za pośrednictwem klasy JdbcTemplate ................ 263
Zaawansowane zastosowania klasy JdbcTemplate ................................................. 264
Obsługa interfejsu RowSet ................................................................................... 266
Klasy obsługujące operacje na relacyjnych systemach zarządzania bazami danych ......... 267
Klasy SqlQuery i MappingSqlQuery ........................................................................ 268
Operacje wstawiania i aktualizacji realizowane za pomocą klasy SqlUpdate .............. 271
Aktualizowanie zbioru wynikowego za pomocą klasy UpdateSqlQuery ....................... 272
Generowanie kluczy głównych ............................................................................... 273
Uzyskiwanie kluczy wygenerowanych przez bazę danych .......................................... 274
Wywoływanie procedur składowanych .................................................................... 275
Zagadnienia zaawansowane ....................................................................................... 278
Uruchamianie Spring JDBC na serwerze aplikacji .................................................... 278
Stosowanie niestandardowych mechanizmów tłumaczenia wyjątków ........................ 280
Odczytywanie i zapisywanie danych obiektów LOB .................................................. 284
Aktualizacje wsadowe .......................................................................................... 289
Zaawansowane techniki korzystania z procedur składowanych ................................. 290
6
Spring Framework. Profesjonalne tworzenie oprogramowania w Javie
Zagadnienia dodatkowe ............................................................................................. 295
Wydajność .......................................................................................................... 295
Kiedy należy używać biblioteki JDBC,
a kiedy narzędzi odwzorowań obiektowo-relacyjnych? ........................................... 296
Wersje biblioteki JDBC i platformy J2EE ................................................................. 296
Podsumowanie ......................................................................................................... 297
Rozdział 6. Zarządzanie transakcjami i źródłami danych ................................................................. 299
Pojęcia podstawowe .................................................................................................. 299
Czym jest transakcja? .......................................................................................... 300
Właściwości ACID ................................................................................................ 300
Sterowanie współbieżnością ................................................................................. 303
Transakcje i platforma J2EE ....................................................................................... 303
Transakcje lokalne ............................................................................................... 304
Transakcje globalne (rozproszone) ........................................................................ 304
Propagowanie transakcji ....................................................................................... 305
Wyznaczanie granic pomiędzy transakcjami ............................................................ 305
Przykład obsługi transakcji w Springu .......................................................................... 306
Wprowadzenie do oferowanej przez Spring warstwy abstrakcji ponad transakcjami ......... 308
Przegląd możliwych opcji sterowania transakcjami .................................................. 310
Definicja transakcji .............................................................................................. 312
Status transakcji ................................................................................................. 314
Strategie wyznaczania granic transakcji ................................................................. 314
Strategie zarządzania transakcjami ....................................................................... 328
Deklaracje źródeł danych ........................................................................................... 338
Źródła lokalne bez puli ......................................................................................... 338
Źródła lokalne z pulą ............................................................................................ 339
JNDI ................................................................................................................... 340
Wybór pomiędzy lokalnym źródłem danych a źródłem danych JNDI ........................... 341
Podsumowanie ......................................................................................................... 341
Rozdział 7. Odwzorowania obiektowo-relacyjne ................................................................................ 343
Pojęcia podstawowe .................................................................................................. 344
Podstawy odwzorowań obiektowo-relacyjnych ......................................................... 345
Obiektowe języki zapytań ...................................................................................... 346
Przezroczyste utrwalanie ....................................................................................... 347
Kiedy należy korzystać z narzędzi odwzorowań obiektowo-relacyjnych? ..................... 348
Obsługa odwzorowań obiektowo-relacyjnych w Springu ................................................. 349
Obiekty dostępu do danych (DAO) ......................................................................... 349
Zarządzanie transakcjami ..................................................................................... 350
iBATIS SQL Maps ...................................................................................................... 351
Plik odwzorowania ............................................................................................... 352
Implementacja interfejsu DAO ............................................................................... 354
Konfiguracja w kontekście Springa ........................................................................ 356
Zarządzanie transakcjami ..................................................................................... 357
Podsumowanie analizy narzędzia iBATIS ................................................................ 359
Hibernate ................................................................................................................. 360
Plik odwzorowań .................................................................................................. 362
Implementacja interfejsu DAO ............................................................................... 363
Konfiguracja w kontekście Springa ........................................................................ 366
Zarządzanie transakcjami ..................................................................................... 370
Plik z chomika:
janowiec
Inne pliki z tego folderu:
Asembler dla procesorow Intel Vademecum profesjonalisty.pdf
(400 KB)
Asembler cwiczenia praktyczne.pdf
(358 KB)
Architektura systemow zarzadzania przedsiebiorstwem Wzorce projektowe.pdf
(829 KB)
Architektura oprogramowania Metody oceny oraz analiza przypadkow.pdf
(429 KB)
Aplikacje w Visual C++ 2005 Przyklady.pdf
(296 KB)
Inne foldery tego chomika:
PHP
Zgłoś jeśli
naruszono regulamin