Spring Boot - budowanie aplikacji REST

Najbliższe terminy tego szkolenia
Standardy JSystems
- Wszyscy nasi trenerzy muszą być praktykami i osiągać średnią z ankiet minimum 4.75 na 5. Nie ma wśród nas trenerów-teoretyków. Każdy trener JSystems ma bogate doświadczenie komercyjne w zakresie tematów z których prowadzi szkolenia.
- Wszystkie szkolenia mają format warszatowy. Każde zagadnienie teoretyczne jest poparte rzędem warsztatów w ściśle określonym formacie.
- Terminy gwarantowane na 100%. Jeśli jakiś termin jest oznaczony jako gwarantowany, oznacza to że odbędzie się nawet jeśli część grupy wycofa się z udziału. Ryzyko ponosimy my jako organizator.
- Do każdego szkolenia które wymaga jakiegokolwiek oprogramowania dostarczamy skonfigurowane, gotowe hosty w chmurze. Dzięki temu uczestnik nie musi nic instalować na swoim komputerze (i bić się z blokadami korporacyjnymi). Połączenie następuje przez zdalny pulpit lub SSH - w zależności od szkolenia.
Program szkolenia
1. Spring Framework
- Inversion of Control i Dependency Injection
- ApplicationContext i cykl życia Beanów
- Konfiguracja adnotacyjna
- Kwalifikatory, zależności, AOP, SpEL
2. Spring Boot
- Spring Initializr i struktura projektu
- Startery i automatyczna konfiguracja
- application.properties
3. Actuator
- Konfiguracja endpointów i dostęp web/JMX
4. REST API
- Zasady REST, kontrolery, adnotacje mapujące
- Mapowanie metod GET, POST, PUT, DELETE
- ResponseEntity, kody odpowiedzi, walidacja
- Obsługa błędów, negocjacja typu zawartości
5. Java Database Connectivity
- Źródło danych, Statement, ResultSet
- Szablon Spring JDBC
6. Transakcje
- JDBC i Spring – @Transactional
- Programistyczna i deklaratywna obsługa
7. Java Persistence API
- ORM, JPA, Hibernate – różnice
- Mapowanie encji i relacji
- JPQL, Criteria API, zapytania natywne
8. Spring Data JPA
- Repository – interfejsy i implementacje
- CRUD, metody niestandardowe, @Query
9. Bezpieczeństwo aplikacji
- Spring Security – podstawy i konfiguracja
- Uwierzytelnianie (in-memory, JDBC)
- Role, uprawnienia, zabezpieczanie REST
10. Testowanie aplikacji
- JUnit, Mockito, testy jednostkowe i integracyjne
- MockMvc, H2, profile testowe
- @WebMvcTest, @DataJpaTest, @SpringBootTest
Opis szkolenia
Szkolenie odbywa się na żywo z udziałem trenera. Nie jest to forma kursu video!
O szkoleniu w skrócie
Szkolenie koncentruje się na praktycznym tworzeniu aplikacji webowych w architekturze REST z wykorzystaniem Spring Boot – nowoczesnego i wszechstronnego frameworka w ekosystemie Javy. Uczestnicy poznają kluczowe elementy Springa, ucząc się projektować i uruchamiać serwerowe aplikacje REST-owe przy użyciu wbudowanego serwera aplikacyjnego.
Cel szkolenia
Celem szkolenia jest zdobycie praktycznych umiejętności tworzenia nowoczesnych aplikacji webowych z wykorzystaniem Spring Boot, w tym:
- projektowania REST API,
- integracji z bazami danych (JPA, Hibernate),
- stosowania dobrych praktyk architektonicznych,
- zapewnienia podstawowego bezpieczeństwa aplikacji.
Dla kogo?
Szkolenie przeznaczone dla programistów języka Java, swobodnie posługujących się technikami obiektowymi.
Czego się nauczysz?
- Stworzysz od podstaw kompletną aplikację REST,
- Poznasz fundamenty działania Spring Boot i jego ekosystemu,
- Nauczysz się projektować czytelne i skalowalne API,
- Wdrożysz komunikację z relacyjną bazą danych przy użyciu Spring Data JPA i Hibernate,
- Zrealizujesz podstawowe mechanizmy uwierzytelniania i autoryzacji,
- Poznajesz dobre praktyki testowania i organizacji kodu.
Prowadzący szkolenie:
Marcin Dzierżak
Z wykształcenia mgr informatyki, absolwent Politechniki Gdańskiej. Obecnie jako konsultant realizuje rozwiązania dla klientów. Doświadczenie zdobywał przez 20 lat pracując dla klientów software house, korporacyjnych oraz administracji europejskiej. Od początku kariery związany i wierny językowi programowania Java. Zdobytą wiedzą praktyczną dzieli się na szkoleniach technicznych. W profilu "fullstack" skupia się na technologiach bazujących na językach programowania Java i JavaScript. Realizowane szkolenia mają charakter praktyczny i warsztatowy.
Stanowisko robocze

Do tego szkolenia każdy uczestnik otrzymuje dostęp do indywidualnej wirtualnej maszyny w chmurze. Ma ona zainstalowane i skonfigurowane wszystko co potrzebne do realizacji szkolenia. Maszyna będzie dostępna przez cały okres szkolenia.
Gdy na jakiś termin zgłosi się minimalna liczba osób, termin oznaczamy jako gwarantowany.
Jeśli jakiś termin oznaczony jest jako gwarantowany to oznacza to, że na 100% się odbędzie we wskazanym czasie i miejscu.
Nawet gdyby część takiej grupy zrezygnowała lub przeniosła się na inny termin, raz ustalony termin gwarantowany takim pozostaje.
Ewentualne ryzyko ponosimy my jako organizator.
Przejdź do terminów tego szkolenia

Sprawdź, co mówią o nas ci, którzy nam zaufali
Trenerzy kategorii Java










Programista i projektant z 13-letnim doświadczeniem, specjalizujący się w Javie i full-stack development. Pracował nad dużymi projektami korporacyjnymi w sektorach fintech oraz insurtech, zdobywając bogate doświadczenie w tworzeniu systemów rozproszonych oraz integracji opartej o API i zdarzenia.
Jako specjalista w dziedzinie Java i architektury oprogramowania, zajmował się również strategicznym rozwojem kompetencji technicznych w organizacji, będąc aktywnym rekruterem technicznym, trenerem oraz mentorem. Pasjonat współpracy z ekspertami domenowymi i klientami, z zamiłowaniem do prostoty i czytelności, z zainteresowaniem Domain Driven Design (DDD) oraz innymi podejściami inżynierii oprogramowania zorientowanymi na domenę biznesową.


Jestem programistą z ponad 15-letnim doświadczeniem. W trakcie swojej kariery kilka razy zmieniałem obszary, z którymi miałem do czynienia (poczynając od niskopoziomowego programowania w C, poprzez fullstackowe zabawy w RubyOnRails, aż do prawdziwego backendu w Javie). Odkąd pamiętam, zawsze lubiłem dzielić się wiedzą z innymi i sprawiało to satysfakcję obu stronom tego procesu. Dlatego naturalną konsekwencją było to, iż zostałem kilka lat temu profesjonalnym trenerem IT.
Prowadzenie szkoleń pozwala mi również na każdorazowe powtórzenie i ugruntowanie swojej wiedzy, co potem bardzo przydaje się w pracy projektowej. Natomiast to, co daje mi największe zadowolenie jako trenerowi, to sytuacja gdy uczeń przerośnie mistrza - wtedy wiem, że dałem z siebie wszystko, a moja praca przyniosła owoce.

