Spring Framework

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

jQuery UI Accordion – Default functionality

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

Przeczytaj opinie o kursie

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. 

© Sages 2024 - Wszelkie prawa zastrzeżone