Kurs Java Developer II - backendK-JAVA-2

Spring, Jakarta EE, bazy danych, Web, SOAP, REST

  • Spring
  • Maven
  • Hibernate
  • GIT
  • SQL
  • Web

Obecnie brak terminów otwartych. Dostępne na zamówienie dla grup.

Edycja dzienna (bloki 3- lub 4-dniowe, średnio co 2 tyg.) Edycja weekendowa (zaoczna) (sob-niedz., średnio co 2 tygodnie)

Warszawa

12 grudnia - 31 stycznia 2025 21 grudnia - 9 marca 2025

Warszawa

3 kwietnia 2025 - 16 maja 2025 15 marca 2025 - 25 maja 2025 zostało 7 miejsc

Zdalnie

12 grudnia - 31 stycznia 2025 21 grudnia - 9 marca 2025

Zdalnie

3 kwietnia 2025 - 16 maja 2025 15 marca 2025 - 25 maja 2025 zostało 7 miejsc

Tryb zdalny: online na żywo z trenerem i grupą (→ więcej o kursach zdalnych). Można: zrezygnować do 15 dni przed startem; w każdej chwili przejść na tryb zdalny; w razie potrzeby skorzystać z nagrań. Kursy dostępne również na zamówienie, w terminie i lokalizacji do uzgodnienia, dla grup od 6 osób.

4,7/5 (107)
Stars
dla firm - netto
dla osób prywatnych - brutto (pokrywamy VAT)
dla podmiotów publicznych - zwolnione z VAT

Cena kursu: 4990 PLN

lub 998 PLN miesięcznie (5 rat)


percent icon first minute (30+ dni do startu) - 3%

percent icon dostęp do nagrań w razie potrzeby

shake hand icon dla chętnych bezpłatnie warsztaty HR

percent icon praktyczne ćwiczenia i miniprojekty

coffee cup icon poczęstunek w cenie

desktop icon stanowisko komputerowe w cenie

  1. Java – elementy zaawansowane
    • Wątki i synchronizacja
      • Elementy wielowątkowości wbudowane w język Java
      • Klasy biblioteki standardowej wspierające wielowątkowość
    • Typy generyczne
    • Elementy programowania funkcyjnego od Javy 8
      • Wyrażenia lambda i referencje do metod
      • Strumienie i operacje na nich
      • Redukcje, kolektory i schematy przetwarzania danych
  2. Maven jako standard budowy projektów w świecie Javy
    • Budowanie projektów Java: command-line/Ant/Maven/Gradle
    • Projekt jako biblioteka; zależności między projektami
    • Centralne Repozytorium Mavena i wykorzystywanie bibliotek „trzeciej strony” we własnych projektach
      • Przegląd użytecznych bibliotek programistycznych open source
  3. Dodatkowe narzędzia, biblioteki i techniki pracy
    • GIT i kontrola wersji kodu
      • Zapisywanie i odtwarzanie historii zmian
      • Rozgałęzienia i ich późniejsze łączenie (branch/merge)
      • Repozytoria lokalne i zdalne; różne scenariusze pracy zespołowej
    • Testy i kontrola jakości kodu
      • Zapewnianie poprawności oprogramowania
      • Dobre i złe praktyki programistyczne
      • Wypisywanie informacji diagnostycznych (tzw. logów)
      • Uruchamianie programu w trybie debug
      • JUnit i testy jednostkowe w Javie
      • Dodatkowe biblioteki przydatne w pisaniu testów: AssertJ, Mockito
  4. Tworzenie aplikacji webowych na platformie Java
    • Zasada działania aplikacji webowej strony serwera
      • Protokół HTTP
      • Podstawy HTML i CSS – w razie potrzeby
    • Podstawy technologii serwletów w Javie
      • Filozofia pracy na serwerze aplikacji. Czym jest Java Enterprise Edition?
      • Obsługa żądań i generowanie odpowiedzi
      • Parametry zapytań i obsługa formularzy
      • Utrzymywanie sesji i atrybuty w różnych zakresach
      • Wprowadzenie do technologii Java Server Pages (JSP) i różne podejścia do podziału odpowiedzialności między JSP a Javę
  5. Framework aplikacyjny Spring
    • Tworzenie i uruchamianie projektu w oparciu o Spring Boot
    • Aplikacja webowa w technologii Spring MVC
      • Kontroler: rola, zasada działania, mapowanie URL-i i wybór metody na podstawie zapytania
      • Obsługa parametrów i nagłówków
      • Warstwa widoku i technologie szablonowe (JSP / Thymeleaf)
      • Model: przekazywanie danych z aplikacji do widoku
      • Obsługa formularzy
    • Zasada działania aplikacji Spring
      • Warstwy typowego projektu
      • Adnotacje i wstrzykiwanie zależności; rola interfejsów w projektach Spring
      • Różne sposoby inicjalizacji i wstrzykiwania komponentów („beanów”)
    • Zabezpieczanie aplikacji – podstawy Spring Security
  6. Bazy danych i ich obsługa w Javie
    • Wprowadzenie do technologii baz danych
      • Serwer baz danych (DBMS)
      • Koncepcja relacyjnych baz danych i pomysły alternatywne
      • Instalacja i konfiguracja PostgreSQL lub innego serwera baz danych
    • Podstawy języka SQL
      • Polecenie SELECT, wyrażenia i warunki
      • Sortowanie i grupowanie
      • Łączenie danych z wielu tabel
      • Wstawianie i aktualizacja danych
    • Projektowanie relacyjnych baz danych (na przykładzie)
      • Definiowanie tabel, typy kolumn
      • Klucze i inne więzy integralności
      • Unikanie redundancji, postacie normalne
    • JDBC i bezpośrednie zadawanie zapytań SQL z aplikacji Java
      • Zalety i wady bezpośredniego dostępu do baz danych
      • Modyfikacja danych i praca z transakcjami
    • Obiektowy dostęp do baz danych (ORM) w technologii JPA/Hibernate
      • Klasy encji; generowanie na podstawie tabel
      • Operacje odczytu i modyfikacji danych
      • Zadawanie własnych zapytań JPQL oraz natywnych
    • Dostęp do danych z aplikacji Spring
      • Warstwa danych („repository”) w aplikacji Spring
      • Automatyczne instancjonowanie interfejsu przez technologię Spring Data
  7. Usługi sieciowe („web services”)
    • Koncepcja SOA i rodzaje usług sieciowych
    • Usługi sieciowe typu SOAP
      • Technologia JAX-WS i tworzenie serwera SOAP w ramach Java EE
      • Generowanie i rola WSDL
      • Tworzenie klienta i architektura klient/serwer
    • Usługi typu REST
      • Zasoby, URL-e i metody HTTP
      • Technologia JAX-RS i tworzenie serwera REST w ramach Java EE
      • Parametry, nagłówki, odnośniki i przekierowania
      • Rozszerzanie JAX-RS o własne typy zawartości na przykładzie generowania PDF
      • Tworzenie serwera REST za pomocą Spring
      • Dostęp do usług REST od strony klienta
  8. Zastosowania języka i platformy Java (w ramach całego kursu)
    • Tworzenie aplikacji tekstowych i wsadowych
      • Zastosowanie Javy do przetwarzania danych zawartych w plikach
    • Tworzenie aplikacji z graficznym interfejsem użytkownika
    • Tworzenie aplikacji webowych
      • w oparciu o serwlety i JSP (podstawy)
      • w oparciu o Spring MVC i Thymeleaf
    • Podstawy tworzenia usług sieciowych typu SOAP i REST