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:
bomaszko
Inne pliki z tego folderu:
Microsoft_Press_eBook_Programming_Windows_8_Apps_with_HTML_CSS_and_JavaScript_PDF.pdf
(18385 KB)
Microsoft_Press_eBook_Xamarin_Preview_2_PDF.pdf
(13662 KB)
Microsoft_Press_ebook_Introducing_Windows_Server_2012_R2_PDF (1).pdf
(11475 KB)
Microsoft_Press_ebook_Introducing_Windows_Server_2012_R2_PDF.pdf
(11475 KB)
Microsoft_Press_ebook_Introducing_Windows_ITPro_PDF.pdf
(9529 KB)
Inne foldery tego chomika:
_ Basic _ QBasic ---
_ DOS _---
_ EDYTORY - IDE - GUI
_ EMULATORY - interpretery
_Biblioteki
Zgłoś jeśli
naruszono regulamin