SPRING W AKCJI WYD. 5

52,55 

SKU: 838b2e4c6f83 Kategoria:

Opis

SPRING W AKCJI WYD. 5

Spring jest frameworkiem ułatwiającym tworzenie nowoczesnych aplikacji w Javie. To narzędzie, które dynamicznie się rozwija i z każdym nowym wydaniem zapewnia programistom kolejne, ekscytujące możliwości. Piąta wersja Springa okazała się krokiem milowym. Obecnie projektanci mogą tworzyć mikrousługi, korzystać z funkcji programowania reaktywnego i doskonalić budowanie aplikacji zgodnie z modelem MVC. Dzięki pełnej integracji Springa ze Spring Boot nawet najbardziej złożone projekty wymagają minimalnej ilości kodu konfiguracyjnego. W efekcie tworzone aplikacje internetowe są w większym stopniu skalowalne i efektywniejsze w wykorzystywaniu wątków.To kolejne, uzupełnione i zaktualizowane wydanie przewodnika po frameworku Spring. Książka jest napisana w zwięzłym, przejrzystym i jasnym stylu, dzięki czemu szybko zrozumiesz zasady pracy ze Springiem i zbudujesz nowoczesną aplikację internetową współpracującą z bazą danych. Pokazano tu techniki programowania reaktywnego, pisania mikrousług, wykrywania usług, wyjaśniono również pracę z API RESTful i zasady wdrażania aplikacji. Nauczysz się też stosować najlepsze praktyki programowania w Springu. Książka jest znakomitą pomocą dla programistów Javy, którzy dopiero zaczynają pracę z tym frameworkiem, a także dla tych, którzy chcą opanować nowe rozwiązania oferowane przez kolejne wersje ekosystemu Springa.W tej książce między innymi:solidne wprowadzenie do frameworków Spring i Spring Bootintegracja aplikacji Springa z innymi aplikacjamiprogramowanie reaktywne w tworzeniu aplikacji internetowychtworzenie mikrousług i praca ze Spring Cloudwdrażanie aplikacji w środowisku produkcyjnym i korzystanie ze Spring Boot AdminNowoczesna aplikacja w Javie? Sprawdź Springa!Spis treści:Wprowadzenie 13Podziękowania 15O książce 17CZĘŚĆ I. PODSTAWY SPRINGA 21Rozdział 1. Rozpoczęcie pracy ze Springiem 231.1. Czym jest Spring? 241.2. Inicjalizacja aplikacji Springa 261.2.1. Inicjalizacja projektu Springa za pomocą Spring Tool Suite 271.2.2. Analiza struktury projektu Springa 301.3. Utworzenie aplikacji Springa 371.3.1. Obsługa żądań internetowych 371.3.2. Definiowanie widoku 391.3.3. Testowanie kontrolera 401.3.4. Kompilacja i uruchomienie aplikacji 411.3.5. Poznajemy Spring Boot DevTools 431.3.6. Przegląd 451.4. Możliwości Springa 461.4.1. Podstawowy framework Spring 471.4.2. Spring Boot 471.4.3. Spring Data 481.4.4. Spring Security 481.4.5. Spring Integration i Spring Batch 481.4.6. Spring Cloud 48Podsumowanie 49Rozdział 2. Tworzenie aplikacji internetowej 512.1. Wyświetlanie informacji 522.1.1. Zdefiniowanie domeny 522.1.2. Utworzenie klasy kontrolera 552.1.3. Przygotowanie widoku 582.2. Przetwarzanie wysłanego formularza 622.3. Weryfikacja danych wyjściowych formularza 682.3.1. Deklarowanie reguł weryfikacji danych 682.3.2. Przeprowadzanie weryfikacji danych podczas ich pobierania z formularza 702.3.3. Wyświetlanie błędów operacji sprawdzania poprawności danych 722.4. Praca z kontrolerem widoku 722.5. Wybór biblioteki szablonów widoku 752.5.1. Buforowanie szablonów 77Podsumowanie 78Rozdział 3. Praca z danymi 793.1. Odczyt i zapis danych za pomocą JDBC 793.1.1. Przygotowanie domeny do obsługi trwałego magazynu danych 823.1.2. Praca z klasą JdbcTemplate 833.1.3. Definiowanie schematu i wstępne przygotowanie danych 873.1.4. Wstawianie danych 893.2. Implementacja trwałego magazynu danych za pomocą Spring Data JPA 983.2.1. Dodawanie Spring Data JPA do projektu 993.2.2. Określenie domeny jako encji 993.2.3. Deklarowanie repozytoriów JPA 1023.2.4. Dostosowanie do własnych potrzeb repozytoriów JPA 104Podsumowanie 106Rozdział 4. Spring Security 1074.1. Włączenie obsługi Spring Security 1084.2. Konfigurowanie Spring Security 1104.2.1. Istniejący w pamięci magazyn danych użytkownika 1114.2.2. Magazyn danych użytkownika oparty na JDBC 1124.2.3. Magazyn danych użytkownika oparty na LDAP 1154.2.4. Dostosowanie uwierzytelniania użytkownika do własnych potrzeb 1184.3. Zabezpieczanie żądań internetowych 1254.3.1. Zabezpieczanie żądań 1264.3.2. Utworzenie własnej strony logowania 1294.3.3. Wylogowanie 1314.3.4. Ochrona przed atakami typu CSRF 1314.4. Poznanie użytkownika 133Podsumowanie 135Rozdział 5. Praca z właściwościami konfiguracyjnymi 1375.1. Dostosowanie konfiguracji automatycznej do własnych potrzeb 1385.1.1. Poznajemy abstrakcję środowiska Springa 1395.1.2. Konfigurowanie źródła danych 1405.1.3. Konfigurowanie serwera osadzonego 1425.1.4. Konfigurowanie rejestrowania danych 1435.1.5. Używanie wartości właściwości specjalnych 1445.2. Tworzenie własnych właściwości konfiguracyjnych 1455.2.1. Definiowanie komponentów przechowujących właściwości konfiguracyjne 1475.2.2. Deklarowanie metadanych właściwości konfiguracyjnej 1495.3. Konfigurowanie za pomocą profili 1525.3.1. Definiowanie właściwości dla konkretnego profilu 1535.3.2. Aktywowanie profilu 1545.3.3. Warunkowe tworzenie komponentu bean z profilami 155Podsumowanie 156CZĘŚĆ II. ZINTEGROWANY SPRING 157Rozdział 6. Praca z właściwościami konfiguracyjnymi 1596.1. Utworzenie kontrolerów RESTful 1606.1.1. Pobieranie danych z serwera 1626.1.2. Przekazywanie danych do serwera 1676.1.3. Uaktualnienie danych w serwerze 1686.1.4. Usuwanie danych z serwera 1706.2. Włączenie obsługi hipermediów 1716.2.1. Dodawanie hiperłączy 1746.2.2. Utworzenie komponentu asemblera zasobu 1766.2.3. Nazewnictwo osadzonych związków 1806.3. Włączenie usług back-endu 1816.3.1. Dostosowanie nazw ścieżek dostępu zasobów i relacji 1846.3.2. Stronicowanie i sortowanie 1866.3.3. Dodawanie własnych punktów końcowych 1876.3.4. Dodawanie własnych hiperłączy do punktów końcowych Spring Data 189Podsumowanie 190Rozdział 7. Używanie usług REST 1917.1. Używanie punktów końcowych REST za pomocą RestTemplate 1927.1.1. Pobieranie zasobu 1947.1.2. Przekazywanie do serwera zasobów za pomocą metody HTTP PUT 1957.1.3. Usuwanie zasobu 1967.1.4. Przekazywanie do serwera zasobów za pomocą metody HTTP POST 1967.2. Poruszanie się po API REST za pomocą Traverson 197Podsumowanie 199Rozdział 8. Asynchroniczne wysyłanie komunikatów 2018.1. Wysyłanie komunikatów za pomocą JMS 2028.1.1. Konfigurowanie JMS 2028.1.2. Wysyłanie komunikatów za pomocą JmsTemplate 2048.1.3. Otrzymywanie komunikatów JMS 2118.2. Praca z RabbitMQ i AMQP 2158.2.1. Dodawanie obsługi brokera RabbitMQ do Springa 2168.2.2. Wysyłanie komunikatów za pomocą RabbitTemplate 2178.2.3. Pobieranie komunikatu z RabbitMQ 2218.3. Obsługa komunikatów za pomocą Apache Kafki 2258.3.1. Konfigurowanie Springa do obsługi komunikatów Kafki 2268.3.2. Wysyłanie komunikatów za pomocą KafkaTemplate 2278.3.3. Utworzenie komponentu nasłuchującego Kafki 229Podsumowanie 231Rozdział 9. Integracja Springa 2339.1. Deklarowanie prostego przepływu integracji 2349.1.1. Definiowanie przepływu integracji za pomocą XML-a 2359.1.2. Konfigurowanie przepływu integracji za pomocą Javy 2379.1.3. Konfigurowanie Spring Integration za pomocą języka specjalizowanego 2399.2. Poznajemy Spring Integration 2419.2.1. Kanał komunikatu 2419.2.2. Filtr 2439.2.3. Przekształcenie 2449.2.4. Router 2459.2.5. Spliter 2479.2.6. Aktywator usługi 2499.2.7. Brama 2519.2.8. Adapter kanału 2529.2.9. Moduł punktu końcowego 2549.3. Utworzenie własnego przepływu integracji dotyczącego poczty elektronicznej 256Podsumowanie 261CZĘŚĆ III. REAKTYWNY SPRING 263Rozdział 10. Wprowadzenie do projektu Reactor 26510.1. Wprowadzenie do programowania reaktywnego 26610.1.1. Definiowanie strumienia reaktywnego 26710.2. Rozpoczęcie pracy z projektem Reactor 26910.2.1. Wykres przepływu reaktywnego 27010.2.2. Dodawanie zależności projektu Reactor 27110.3. Najczęściej stosowane operacje reaktywne 27210.3.1. Tworzenie typu reaktywnego 27310.3.2. Łączenie typów reaktywnych 27710.3.3. Przekształcanie i filtrowanie strumienia reaktywnego 28110.3.4. Przeprowadzanie operacji logicznej na typie reaktywnym 290Podsumowanie 292Rozdział 11. Tworzenie reaktywnego API 29311.1. Praca z frameworkiem WebFlux w Springu 29311.1.1. Wprowadzenie do Spring WebFlux 29511.1.2. Definiowanie kontrolera reaktywnego 29611.2. Definiowanie funkcyjnych procedur obsługi żądania 30011.3. Testowanie kontrolera reaktywnego 30311.3.1. Testowanie żądań HTTP GET 30311.3.2. Testowanie żądań POST 30611.3.3. Testowanie działającego serwera 30711.4. Reaktywne używanie API REST 30811.4.1. Pobieranie zasobów 30911.4.2. Przekazywanie zasobu 31111.4.3. Usunięcie zasobu 31211.4.4. Obsługa błędów 31211.4.5. Wymiana żądań 31411.5. Zabezpieczanie API reaktywnego 31611.5.1. Konfigurowanie zabezpieczeń reaktywnej aplikacji internetowej 31611.5.2. Konfigurowanie reaktywnej usługi szczegółów związanych z użytkownikiem 318Podsumowanie 319Rozdział 12. Reaktywny trwały magazyn danych 32112.1. Reaktywność i Spring Data 32212.1.1. Reaktywny Spring Data 32312.1.2. Konwersja między typem reaktywnym a niereaktywnym 32312.1.3. Opracowanie repozytorium reaktywnego 32512.2. Praca z reaktywnymi repozytoriami bazy danych Cassandra 32512.2.1. Włączenie obsługi Spring Data Cassandra 32612.2.2. Modelowanie danych w bazie danych Cassandra 32812.2.3. Mapowanie typów domeny pod kątem przechowywania informacji w bazie danych Cassandra 32912.2.4. Tworzenie reaktywnego repozytorium bazy danych Cassandra 33512.3. Tworzenie reaktywnych repozytoriów MongoDB 33712.3.1. Dodawanie obsługi Spring Data MongoDB 33812.3.2. Mapowanie typu domeny na dokument MongoDB 33912.3.3. Tworzenie interfejsów repozytoriów reaktywnych MongoDB 343Podsumowanie 345CZĘŚĆ IV. NATYWNA CHMURA SPRINGA 347Rozdział 13. Odkrywanie usług 34913.1. Poznajemy mikrousługi 35013.2. Konfiguracja rejestru usług 35213.2.1. Konfigurowanie Eureki 35613.2.2. Skalowanie serwera Eureka 35913.3. Rejestrowanie i odkrywanie usług 36113.3.1. Konfigurowanie właściwości klienta Eureki 36213.3.2. Używanie usługi 363Podsumowanie 368Rozdział 14. Zarządzanie konfiguracją 37114.1. Konfiguracja współdzielona 37214.2. Uruchamianie serwera konfiguracji 37314.2.1. Włączanie Config Server 37414.2.2. Umieszczanie właściwości w repozytorium konfiguracyjnym 37714.3. Używanie konfiguracji współdzielonej 38014.4. Udostępnienie konfiguracji przeznaczonej dla konkretnej aplikacji i konkretnego profilu 38214.4.1. Udostępnianie właściwości przeznaczonych dla konkretnej aplikacji 38214.4.2. Udostępnianie właściwości z profili 38314.5. Utajnienie właściwości konfiguracyjnych 38514.5.1. Szyfrowanie właściwości w repozytorium Git 38614.5.2. Przechowywanie danych wrażliwych w magazynie Vault 38914.6. Odświeżanie właściwości konfiguracyjnych w locie 39314.6.1. Ręczne odświeżanie właściwości konfiguracyjnych 39414.6.2. Automatyczne odświeżanie właściwości konfiguracyjnych 396Podsumowanie 404Rozdział 15. Obsługa awarii i opóźnień 40515.1. Wprowadzenie do wzorca bezpiecznika 40515.2. Deklarowanie bezpiecznika 40815.2.1. Łagodzenie opóźnienia 41015.2.2. Zarządzanie wartością graniczną bezpiecznika 41115.3. Monitorowanie awarii 41215.3.1. Wprowadzenie do panelu kontrolnego biblioteki Hystrix 41315.3.2. Pula wątków biblioteki Hystrix 41615.4. Agregowanie wielu strumieni biblioteki Hystrix 418Podsumowanie 419CZĘŚĆ V. WDRAŻANIE APLIKACJI SPRINGA 421Rozdział 16. Praca ze Spring Boot Actuator 42316.1. Wprowadzenie do Actuatora 42416.1.1. Konfigurowanie bazowej ścieżki dostępu Actuatora 42516.1.2. Włączanie i wyłączanie punktów końcowych Actuatora 42616.2. Używanie punktów końcowych Actuatora 42716.2.1. Pobieranie podstawowych informacji o aplikacji 42816.2.2. Wyświetlanie konfiguracji aplikacji 43116.2.3. Wyświetlanie informacji o aktywności aplikacji 43916.2.4. Dane statystyczne dotyczące środowiska uruchomieniowego 44216.3. Dostosowanie Actuatora do własnych potrzeb 44416.3.1. Dodawanie informacji dostarczanych później przez punkt końcowy /info 44516.3.2. Definiowanie własnych wskaźników informacji o stanie aplikacji 44916.3.3. Rejestrowanie niestandardowych danych statystycznych 45016.3.4. Tworzenie własnego punktu końcowego 45216.4. Zabezpieczanie Actuatora 455Podsumowanie 457Rozdział 17. Administrowanie Springiem 45917.1. Używanie Spring Boot Admin 45917.1.1. Tworzenie serwera administracyjnego 46017.1.2. Rejestrowanie klientów serwera administracyjnego 46217.2. Poznajemy serwer administracyjny 46517.2.1. Wyświetlanie ogólnych informacji o stanie aplikacji 46617.2.2. Obserwowanie kluczowych danych statystycznych 46617.2.3. Analiza zmiennych środowiskowych 46717.2.4. Wyświetlanie i zmiana poziomu rejestrowania danych 46917.2.5. Monitorowanie wątków 46917.2.6. Monitorowanie żądań HTTP 47017.3. Zabezpieczanie serwera administracyjnego 47117.3.1. Włączanie logowania w serwerze administracyjnym 47217.3.2. Uwierzytelnianie z użyciem Actuatora 473Podsumowanie 474Rozdział 18. Monitorowanie Springa za pomocą JMX 47518.1. Praca z Actuatorem i MBean 47618.2. Tworzenie własnego komponentu MBean 47818.3. Wysyłanie powiadomień 480Podsumowanie 481Rozdział 19. Wdrażanie aplikacji Springa 48319.1. Opcje podczas wdrażania aplikacji 48419.2. Kompilowanie i wdrażanie pliku WAR 48519.3. Przekazanie pliku JAR do Cloud Foundry 48719.4. Umieszczanie aplikacji Spring Boota w kontenerze Dockera 49019.5. To nie koniec, ale dopiero początek 494Podsumowanie 494DODATKI 495Dodatek A. Tworzenie aplikacji Springa 497A.1. Inicjalizacja projektu za pomocą Spring Tool Suite 497A.2. Tworzenie projektu za pomocą IntelliJ IDEA 500A.3. Tworzenie projektu za pomocą NetBeans 503A.4. Inicjalizacja projektu na stronie start.spring.io 506A.5. Inicjalizacja projektu z poziomu powłoki 510A.5.1. Polecenie curl i API Initializr 510A.5.2. Interfejs powłoki dla Spring Boota 512A.6. Tworzenie aplikacji Springa za pomocą metaframeworka 513A.7. Kompilowanie i uruchamianie projektu 513Skorowidz 515O autorze: Craig Walls — starszy programista w firmie Pivotal. Zaangażowany w promocję frameworka Spring, często występuje jako prelegent na konferencjach. Swoje wystąpienia poświęca właśnie Springowi. Craig Walls, ma szczególny dar do przedstawiania zwięzłych i zabawnych przykładów, które w doskonały sposób demonstrują możliwości i techniki, które będziesz musiał poznać.

Informatyka

xxxxx

yyyyy