Spring Framework
Zdobądź kwalifikacje niezbędne do stworzenia kompletnej aplikacji od warstwy dostępu, aż po usługi REST/ interfejs użytkownika

Efektywna formuła nauki w trybie e-learning Masterclass
- Opanujesz Spring framework w stopniu pozwalającym na jego wykorzystanie w realnym projekcie
- Unikniesz błędów popełnianych przez osoby zaczynające samodzielną naukę
- Systematyczna aktualizacje materiałów i praca z najnowszą wersją Spring
- Podniesiesz swoje umiejętności, a także wartość na rynku, dzięki czemu łatwiej otrzymasz nową pracę, awans lub podwyżkę
Co osiągniesz w czasie trwania kursu?
- Będziesz rozumiał i potrafił zastosować najważniejsze elementy Spring framework
- Będziesz umiał efektywnie wdrożyć i wykorzystać Spring framework w prawdziwym projekcie
- Będziesz w stanie testować aplikacje oparte o Spring zarówno na poziomie jednostkowym jak i integracyjnym
- Będziesz tworzył lepsze i bardziej profesjonalne aplikacje oparte o framework, który jest de facto standardem na rynku
- Będziesz miał praktyczną wiedzę zgodną z zakresem wymaganym na egzamin Spring Professional
- Będziesz posiadał kwalifikacje pożądane wśród pracodawców
Skuteczna nauka online
40h nagrań e-learningowych
Poziom
średniozaawansowany
Doświadczeni trenerzy
Skorzystaj na doświadczeniu najlepszych ekspertów w branży
PROGRAM KURSU
Wprowadzenie do kursu Spring Framework
- Charakterystyka i możliwości frameworku
- Idiomy i praktyki wykorzystywane w Spring (wstrzykiwanie zależności, programowanie aspektowe, wykorzystanie interfejsów, wzorce projektowe)
- Zapoznanie ze środowiskiem developerskim
- Tworzenie i konfigurowanie projektu
- Praca z dokumentacją / dodatkowe źródła wiedzy
Kontener Spring
- Idea IoC oraz wstrzykiwanie zależności
- Odpowiedzialność i zasada działania kontenera
- Przegląd implementacji dostępnych kontenerów
- Komponenty zarządzane – konfiguracja, wstrzykiwanie, zasięg, cykl życia
- Programowanie przez zdarzenia
- Inne istotne elementy (Resources, Converters, PostProcessors)
Programowanie aspektowe
- Wprowadzenie – koncepcja, możliwości i potencjalne zastosowanie
- Realizacja AOP na poziomie Spring (dynamic proxies vs. CGLIB)
- Desygnatory
- Implementacja i konfiguracja aspektów m.in. typy advice, przechwytywanie argumentów, rezultatów oraz wyjątków z metod
Utrwalanie danych
- Konfigurowanie połączenia do bazy
- Transakcje – definicja, parametry (propagacja, reguły wycofywania, poziom izolacji, czas ważności)
- Menedżer transakcji – sposób działania, dostępne implementacje, konfiguracja, deklaratywne zatwierdzanie / wycofywanie transakcji
- Wprowadzenie do mapowania obiektowo-relacyjnego i standardu JPA
- Tworzenie i mapowanie encji
- Zarządzanie relacjami
- Integracja z JPA i frameworkiem Hibernate
- Wprowadzenie do projektu Spring Data
- Praca z repozytoriami – DSL, adnotacje, zapytania przez przykłady, własne implementacje repozytoriów Spring Data w kontekście nierelacyjnych bazy danych
- Wykorzystanie pamięci podręcznej (cache abstraction)
Usługi REST
- Założenia architektury REST
- Tworzenie i konfigurowanie kontrolerów – mapowanie, wstrzykiwanie parametrów, nagłówków i ciasteczek, statusy odpowiedzi
- Obsługa wyjątków
- Konwertery i obiekty transferowe
- Integracja z frameworkami webowymi (Angular)
- Dokumentacja API z wykorzystaniem Swagger
Warstwa webowa
- Spring MVC – istotne komponenty i ich konfiguracja, cykl obsługi żądania, web scopes
- Budowa i mapowanie kontrolerów
- Tworzenie widoków – szablony, obsługa formularzy, walidacja, internacjonalizacja
- Sesja i zarządzanie stanem
- Integracja z innymi technologiami
Spring Boot
- Przeznaczenie, możliwości, zasada działania
- Budowanie, wdrażanie i uruchamianie aplikacji
- Klasy konfiguracyjne / autokonfiguracja
- Zmiana ustawień domyślnych
- Migracja do Spring Boot
Spring WebFlux
- Wstęp do programowania reaktywnego i biblioteki Reactor
- Podstawy frameworka WebFlux
- Budowanie reaktywnych aplikacji
- RxJava / RxJS jako alternatywne przykłady reaktywnych bibliotek
Integracja
- Wprowadzenie
- Integracja Java EE (JMS,EJB,JNDI)
- WebSockets, Email, Scheduler
Testowanie
- Wprowadzenie do testowania jednostkowego
- Narzędzia xUnit
- Obiekty zastępcze i wykorzystanie biblioteki Mockito
- Cechy dobrych testów
- Wprowadzenie do TDD
- Testy jednostkowe na poziomie repozytoriów, usług i kontrolerów
- Testy integracyjne
Wprowadzenie do Spring Security
- Architektura, komponenty i podstawowe usługi
- Konfiguracja bezpieczeństwa (uwierzytelnianie, autoryzacja dostępu) na poziomie webowym i metod poszczególnych komponentów
- Zabezpieczenie usług REST (tokeny JWT, OAuth2)
- Bezpieczna komunikacja
Wdrażanie
- Wprowadzenie do konteneryzacji z wykorzystaniem Dockera
- Wdrożenie aplikacji na VPS
- Ciągła integracja z użyciem Jenkins
- Bonus: Wprowadzenie do Spring Cloud
- Bonus: Wprowadzenie do Kubernetes
Kurs „Spring Framework” (C) Sages 2020.
Przeczytaj opinie o kursie
⭐⭐⭐⭐⭐
Kurs przewyższył moje oczekiwania.
⭐⭐⭐⭐⭐
Podczas całego kursu nie zdarzyło mi się siedzieć bezczynnie.
Poznaj autora – Łukasza Andrzejewskiego
Mam ponad 15-letnie doświadczenie na sali szkoleniowej. W ciągu ostatnich 5 lat przeszkoliłem ponad 1000 osób. Przeprowadzałem szkolenia dla największych firm z branży bankowej, ubezpieczeniowej, czy informatycznej. Między innymi dla: Santander Bank Polska S.A., ERGO Hestia, Asseco Poland czy Orange. Specjalizuję się w szeroko pojętych technologiach Java, rozwiązaniach frontendowych i mobilnych. W Sages jestem Partnerem / Head of Technology – wspieram merytorycznie rozwój oferty szkoleniowej. Przygotowuję i prowadzę szkolenia jako trener wiodący, biorę udział w realizacji projektów IT oraz oferuję konsultacje w zakresie doboru architektury i/lub technologii.