Spring Receptury

This document was uploaded by one of our users. The uploader already confirmed that they had the permission to publish it. If you are author/publisher or own the copyright of this documents, please report to us by using this DMCA report form.

Simply click on the Download Book button.

Yes, Book downloads on Ebookily are 100% Free.

Sometimes the book is free on Amazon As well, so go ahead and hit "Search on Amazon"

Najlepsze receptury na wykorzystanie Springa! Spring zadebiutował na rynku w 2004 roku, osiem lat po opublikowaniu pierwszej wersji języka Java i od tego czasu jest dynamicznie rozwijany. Dzięki licznym modułom pozwala on błyskawicznie tworzyć skomplikowane aplikacje i wyręcza programistów w trudzie ustawiania typowych konfiguracji. Jeżeli do tego dołożyć ogromną społecznoć i świetną dokumentację, to nie ma się co dziwić, że jest tak popularny! Jeżeli wykorzystujesz Springa w swojej codziennej pracy lub chcesz wypróbować jego możliwoci, to trafiłe na doskonałą książkę. Należy ona do cenionej wśród programistów serii Receptury. Znajdziesz w niej omówienie zarówno podstawowych zagadnień związanych ze Springiem, jak i tych zaawansowanych. Na samym początku poznasz kontener IoC (ang. Inversion of Control), nauczysz się tworzyć ziarna oraz wstrzykiwać je na różne sposoby. W kolejnych rozdziałach odkryjesz, jak korzystać z AspectJ, Spring WebFlow oraz Spring-WS. Ponadto zobaczysz, jak używać REST, testów jednostkowych i integracyjnych oraz ORM. Spring wspiera te i wiele innych obszarów codziennej pracy programisty. Książka ta jest doskonałym omówieniem Springa na podstawie przykładów jego zastosowań. Dzięki tej książce: stworzysz kontener IoC skonstruujesz ziarna i wstrzykniesz je poznasz dostępne moduły przygotujesz usługi sieciowe i skorzystasz z tych usług Wykorzystaj potencjał Springa i zoptymalizuj swoją pracę!

Author(s): Gary Mak, Josh Long, Daniel Rubio
Year: 0

Language: Polish
Pages: 846

Spis treści......Page 2
1.2. Konfigurowanie ziaren w kontenerze IoC......Page 0
Podziękowania......Page 9
Dla kogo przeznaczona jest ta książka?......Page 11
Struktura książki......Page 12
Kontakt z autorami......Page 13
1.3. Tworzenie ziaren za pomocą konstruktora......Page 26
1.4. Wybieranie konstruktora w przypadku wieloznaczności......Page 29
1.5. Podawanie referencji do ziaren......Page 31
1.6. Określanie typu danych elementów kolekcji......Page 35
1.7. Tworzenie ziaren za pomocą interfejsu FactoryBean Springa......Page 37
1.8. Definiowanie kolekcji za pomocą ziaren fabrycznych i schematu util......Page 39
1.9. Sprawdzanie właściwości na podstawie zależności......Page 41
1.10. Sprawdzanie właściwości z adnotacją @Required......Page 43
1.11. Automatyczne łączenie ziaren za pomocą konfiguracji w pliku XML......Page 45
1.12. Automatyczne łączenie ziaren z adnotacjami @Autowired i @Resource......Page 49
1.13. Dziedziczenie konfiguracji ziarna......Page 54
1.14. Skanowanie komponentów z parametru classpath......Page 57
Podsumowanie......Page 62
2.1. Tworzenie ziaren za pomocą statycznych metod fabrycznych......Page 63
2.2. Tworzenie ziaren za pomocą fabrycznej metody egzemplarza......Page 64
2.3. Deklarowanie ziaren na podstawie pól statycznych......Page 66
2.4. Deklarowanie ziaren na podstawie właściwości obiektów......Page 67
2.5. Używanie języka wyrażeń dostępnego w Springu......Page 69
2.6. Ustawianie zasięgu ziarna......Page 74
2.7. Modyfikowanie procesu inicjowania i usuwania ziaren......Page 76
2.8. Skracanie konfiguracji w XML-u za pomocą projektu Java Config......Page 80
2.9. Ziarna znające zasoby kontenera......Page 84
2.10. Wczytywanie zasobów zewnętrznych......Page 85
2.11. Tworzenie postprocesorów ziaren......Page 88
2.12. Zewnętrzne przechowywanie konfiguracji ziarna......Page 91
2.13. Określanie komunikatów tekstowych......Page 92
2.14. Komunikowanie się ze zdarzeniami aplikacji......Page 94
2.15. Rejestrowanie edytorów właściwości w Springu......Page 97
2.16. Tworzenie niestandardowych edytorów właściwości......Page 100
2.17. Obsługa współbieżności za pomocą interfejsu TaskExecutor......Page 101
Podsumowanie......Page 109
Rozdział 3. Programowanie aspektowe i obsługa języka AspectJ w Springu......Page 111
3.1. Włączanie obsługi adnotacji języka AspectJ w Springu......Page 112
3.2. Deklarowanie aspektów za pomocą adnotacji języka AspectJ......Page 114
3.3. Dostęp do informacji o punkcie złączenia......Page 119
3.4. Określanie pierwszeństwa aspektów......Page 120
3.5. Ponowne wykorzystanie definicji punktu przecięcia......Page 122
3.6. Pisanie wyrażeń z punktami przecięcia w języku AspectJ......Page 124
3.7. Dodawanie operacji do ziaren......Page 128
3.8. Dodawanie stanu do ziarna......Page 130
3.9. Deklarowanie aspektów za pomocą konfiguracji w XML-u......Page 132
3.10. Wplatanie aspektów języka AspectJ w Springu w czasie ładowania......Page 135
3.11. Konfigurowanie w Springu aspektów języka AspectJ......Page 140
3.12. Wstrzykiwanie ziaren Springa do obiektów domenowych......Page 141
Podsumowanie......Page 144
4.1. Implementowanie ziaren za pomocą języków skryptowych......Page 145
4.2. Wstrzykiwanie ziaren Springa do skryptów......Page 149
4.3. Aktualizowanie ziaren ze skryptów......Page 152
4.4. Wewnątrzwierszowe definiowanie kodu źródłowego skryptów......Page 153
Podsumowanie......Page 154
5.1. Zabezpieczanie dostępu do adresów URL......Page 155
5.2. Logowanie się do aplikacji sieciowych......Page 164
5.3. Uwierzytelnianie użytkowników......Page 168
5.4. Podejmowanie decyzji z zakresu kontroli dostępu......Page 177
5.5. Zabezpieczanie wywołań metod......Page 180
5.6. Obsługa zabezpieczeń w widokach......Page 182
5.7. Zabezpieczanie obiektów domenowych......Page 184
Podsumowanie......Page 192
Rozdział 6. Integrowanie Springa z innymi platformami do tworzenia aplikacji sieciowych......Page 195
6.1. Dostęp do Springa w dowolnych aplikacjach sieciowych......Page 196
6.2. Używanie Springa w serwletach i filtrach......Page 200
6.3. Integrowanie Springa z platformą Struts 1.x......Page 204
6.4. Integrowanie Springa z platformą JSF......Page 210
6.5. Integrowanie Springa z platformą DWR......Page 215
Podsumowanie......Page 219
7.1. Zarządzanie prostym przepływem sterowania za pomocą platformy Spring Web Flow......Page 221
7.2. Modelowanie przepływów sterowania za pomocą różnych rodzajów stanów......Page 228
7.3. Zabezpieczanie przepływów sterowania w aplikacjach sieciowych......Page 239
7.4. Utrwalanie obiektów w przepływach sterowania w aplikacjach sieciowych......Page 241
7.5. Integrowanie platformy Spring Web Flow z technologią JSF......Page 247
7.6. Korzystanie z platformy RichFaces w platformie Spring Web Flow......Page 254
Podsumowanie......Page 258
8.1. Tworzenie prostej aplikacji sieciowej za pomocą platformy Spring MVC......Page 259
8.2. Wiązanie żądań za pomocą adnotacji @RequestMapping......Page 270
8.3. Przechwytywanie żądań przy użyciu interceptorów przetwarzania......Page 274
8.4. Określanie ustawień regionalnych użytkowników......Page 277
8.5. Pliki zewnętrzne z tekstem dostosowanym do ustawień regionalnych......Page 279
8.6. Określanie widoków na podstawie nazw......Page 281
8.7. Widoki i negocjowanie treści......Page 283
8.8. Wiązanie wyjątków z widokami......Page 286
8.9. Przypisywanie wartości w kontrolerze za pomocą adnotacji @Value......Page 288
8.10. Obsługiwanie formularzy za pomocą kontrolerów......Page 289
8.11. Obsługa wielu formularzy za pomocą kontrolerów formularzy kreatora......Page 302
8.12. Sprawdzanie poprawności ziaren za pomocą adnotacji (na podstawie standardu JSR-303)......Page 311
8.13. Tworzenie widoków w formatach XLS i PDF......Page 313
Podsumowanie......Page 319
9.1. Publikowanie usług typu REST w Springu......Page 321
9.2. Dostęp do usług typu REST w Springu......Page 325
9.3. Publikowanie danych z kanałów informacyjnych RSS i Atom......Page 330
9.4. Publikowanie danych w formacie JSON w usługach typu REST......Page 337
9.5. Dostęp do usług typu REST zwracających skomplikowane odpowiedzi w formacie XML......Page 340
Podsumowanie......Page 348
Rozdział 10. Spring i Flex......Page 349
10.1. Wprowadzenie do środowiska Flex......Page 351
10.2. Poza piaskownicę......Page 356
10.3. Dodawanie obsługi narzędzia Spring BlazeDS Integration do aplikacji......Page 366
10.4. Udostępnianie usług za pomocą technologii BlazeDS i Springa......Page 370
10.5. Używanie obiektów działających po stronie serwera......Page 376
10.6. Korzystanie z usług opartych na komunikatach w narzędziach BlazeDS i Spring......Page 379
10.7. Wstrzykiwanie zależności w kliencie w ActionScripcie......Page 390
Podsumowanie......Page 394
11.1. Pobieranie i instalowanie platformy Grails......Page 395
11.2. Tworzenie aplikacji za pomocą platformy Grails......Page 396
11.3. Wtyczki platformy Grails......Page 400
11.4. Środowisko rozwojowe, produkcyjne i testowe w platformie Grails......Page 402
11.5. Tworzenie klas domenowych aplikacji......Page 404
11.6. Generowanie kontrolerów CRUD i widoków na potrzeby klas domenowych aplikacji......Page 406
z umiędzynarodawianiem komunikatów......Page 409
11.8. Zmienianie systemu pamięci trwałej......Page 412
11.9. Rejestrowanie danych wyjściowych......Page 414
11.10. Przeprowadzanie testów jednostkowych i integracyjnych......Page 416
i szablonów......Page 421
11.12. Zapytania GORM......Page 424
11.13. Tworzenie niestandardowych znaczników......Page 426
Podsumowanie......Page 428
Rozdział 12. Spring Roo......Page 429
12.1. Konfigurowanie środowiska programistycznego pod kątem narzędzia Spring Roo......Page 431
12.2. Tworzenie pierwszego projektu opartego na narzędziu Roo......Page 433
12.3. Importowanie istniejących projektów do środowiska STS......Page 438
12.4. Szybsze budowanie lepszych aplikacji......Page 440
12.5. Usuwanie Roo z projektu......Page 446
Podsumowanie......Page 448
Rozdział 13. Testy w Springu......Page 449
13.1. Tworzenie testów za pomocą platform JUnit i TestNG......Page 450
13.2. Tworzenie testów jednostkowych i testów integracyjnych......Page 455
13.3. Testy jednostkowe kontrolerów platformy Spring MVC......Page 463
13.4. Zarządzanie kontekstem aplikacji w testach integracyjnych......Page 464
13.5. Wstrzykiwanie konfiguracji testów w testach integracyjnych......Page 470
13.6. Zarządzanie transakcjami w testach integracyjnych......Page 474
13.7. Dostęp do bazy danych w testach integracyjnych......Page 479
13.8. Stosowanie w Springu standardowych adnotacji związanych z testami......Page 483
Podsumowanie......Page 485
14.1. Tworzenie prostego portletu za pomocą platformy Spring Portlet MVC......Page 487
14.2. Wiązanie żądań kierowanych do portletów z metodami obsługi......Page 495
14.3. Obsługa formularzy z portletów za pomocą prostych kontrolerów formularzy......Page 502
Podsumowanie......Page 509
Rozdział 15. Dostęp do danych......Page 511
Problemy z bezpośrednim korzystaniem z JDBC......Page 512
15.1. Używanie szablonu JDBC do aktualizowania bazy danych......Page 518
15.2. Używanie szablonów JDBC do pobierania danych z bazy......Page 522
15.3. Upraszczanie tworzenia szablonów JDBC......Page 527
15.4. Używanie prostego szablonu JDBC w Javie 1.5......Page 529
15.5. Stosowanie nazwanych parametrów w szablonach JDBC......Page 532
15.6. Obsługa wyjątków w platformie Spring JDBC......Page 534
15.7. Problemy z bezpośrednim używaniem platform do tworzenia odwzorowań ORM......Page 539
15.8. Konfigurowanie fabryk zasobów ORM w Springu......Page 548
15.9. Utrwalanie obiektów za pomocą szablonów ORM Springa......Page 554
15.10. Utrwalanie obiektów za pomocą sesji kontekstowych platformy Hibernate......Page 559
wstrzykiwania kontekstu w JPA......Page 562
Podsumowanie......Page 565
Rozdział 16. Zarządzanie transakcjami w Springu......Page 567
16.1. Problemy z zarządzaniem transakcjami......Page 568
16.2. Jak wybrać implementację menedżera transakcji?......Page 573
16.3. Programowe zarządzanie transakcjami za pomocą interfejsu menedżera transakcji......Page 575
16.4. Programowe zarządzanie transakcjami za pomocą szablonu transakcji......Page 577
16.5. Deklaratywne zarządzanie transakcjami za pomocą rad transakcji......Page 580
16.6. Deklaratywne zarządzanie transakcjami za pomocą adnotacji @Transactional......Page 582
16.7. Ustawianie atrybutu propagation transakcji......Page 583
16.8. Ustawianie atrybutu określającego poziom izolacji transakcji......Page 588
wycofywania transakcji......Page 594
czasu i trybem tylko do odczytu......Page 596
16.11. Zarządzanie transakcjami za pomocą wplatania w czasie ładowania......Page 597
Podsumowanie......Page 600
17.1. Udostępnianie i wywoływanie usług za pomocą technologii RMI......Page 601
17.2. Tworzenie komponentów EJB 2.x za pomocą Springa......Page 605
17.3. Dostęp do dawnych komponentów EJB 2.x w Springu......Page 610
17.4. Tworzenie komponentów EJB 3.0 w Springu......Page 613
17.5. Dostęp do komponentów EJB 3.0 w Springu......Page 615
17.6. Udostępnianie i wywoływanie usług za pomocą protokołu HTTP......Page 617
sieciowych SOAP......Page 620
za pomocą JAX-WS......Page 622
17.9. Definiowanie kontraktu usługi sieciowej......Page 628
17.10. Implementowanie usług sieciowych za pomocą platformy Spring-WS......Page 632
17.11. Wywoływanie usług sieciowych za pomocą platformy Spring-WS......Page 637
17.12. Tworzenie usług sieciowych za pomocą serializowania dokumentów XML......Page 640
17.13. Tworzenie punktów końcowych usług za pomocą adnotacji......Page 645
Podsumowanie......Page 647
MBeans technologii JMX......Page 649
18.2. Publikowanie i odbieranie powiadomień JMX......Page 659
18.3. Dostęp do zdalnych ziaren MBeans technologii JMX w Springu......Page 661
18.4. Wysyłanie e-maili za pomocą dostępnej w Springu obsługi poczty elektronicznej......Page 664
18.5. Planowanie zadań za pomocą dostępnej w Springu obsługi Quartza......Page 671
18.6. Planowanie zadań za pomocą przestrzeni nazw Scheduling ze Springa 3.0......Page 675
Podsumowanie......Page 678
Rozdział 19. Komunikaty......Page 679
19.1. Wysyłanie i pobieranie komunikatów JMS w Springu......Page 680
19.2. Przekształcanie komunikatów JMS......Page 690
19.3. Zarządzanie transakcjami JMS......Page 692
19.4. Tworzenie w Springu obiektów POJO sterowanych komunikatami......Page 693
19.5. Nawiązywanie połączeń......Page 698
Podsumowanie......Page 700
Rozdział 20. Platforma Spring Integration......Page 701
20.1. Integrowanie jednego systemu z innym za pomocą EAI......Page 702
20.2. Integrowanie dwóch systemów za pomocą technologii JMS......Page 704
20.3. Wyszukiwanie informacji o kontekście w komunikatach platformy Spring Integration......Page 708
za pomocą systemu plików......Page 710
20.5. Przekształcanie komunikatów z jednego typu na inny......Page 712
20.6. Obsługa błędów za pomocą platformy Spring Integration......Page 715
20.7. Rozdzielanie operacji w integrowanych mechanizmach — rozdzielacze i agregatory......Page 718
za pomocą komponentu router......Page 721
20.9. Dostosowywanie zewnętrznych systemów do magistrali......Page 722
20.10. Podział zdarzeń na etapy za pomocą projektu Spring Batch......Page 731
20.11. Używanie bram......Page 732
Podsumowanie......Page 737
Rozdział 21. Platforma Spring Batch......Page 739
21.1. Konfigurowanie infrastruktury platformy Spring Batch......Page 741
21.2. Odczyt i zapis......Page 744
interfejsów ItemWriter i ItemReader......Page 748
21.4. Przetwarzanie danych wejściowych przed ich zapisaniem......Page 750
21.5. Łatwiejsza praca dzięki transakcjom......Page 753
21.6. Ponawianie prób......Page 754
21.7. Kontrolowanie wykonywania kroków......Page 757
21.8. Uruchamianie zadania......Page 761
21.9. Parametry w zadaniach......Page 764
Podsumowanie......Page 766
Rozdział 22. Przetwarzanie rozproszone w Springu......Page 767
22.1. Przechowywanie stanu obiektów w klastrach za pomocą narzędzia Terracotta......Page 769
22.2. Przetwarzanie w gridzie......Page 777
22.3. Równoważenie obciążenia przy wykonywaniu metody......Page 779
22.4. Przetwarzanie równoległe......Page 782
z narzędzia GridGain......Page 784
Podsumowanie......Page 788
Rozdział 23. Spring i jBPM......Page 789
Procesy w oprogramowaniu......Page 790
23.1. Modele przepływu pracy......Page 792
23.2. Instalowanie systemu jBPM......Page 794
23.3. Integrowanie systemu jBPM 4 ze Springiem......Page 796
23.4. Tworzenie usług za pomocą Springa......Page 801
23.5. Tworzenie procesu biznesowego......Page 804
Podsumowanie......Page 806
Rozdział 24. Spring i OSGi......Page 807
24.1. Początki pracy z OSGi......Page 808
24.2. Wprowadzenie do korzystania z platformy Spring Dynamic Modules......Page 813
24.3. Eksportowanie usług za pomocą platformy Spring Dynamic Modules......Page 817
24.4. Wyszukiwanie konkretnych usług w rejestrze OSGi......Page 820
24.5. Publikowanie usług zgodnych z wieloma interfejsami......Page 822
Spring Dynamic Modules......Page 823
24.7. Używanie serwera dm Server firmy SpringSource......Page 824
24.8. Narzędzia firmy SpringSource......Page 826
Podsumowanie......Page 827
Skorowidz......Page 829