
Istotne. Baza tego warsztatu została opracowana w Java 17. Testy w tym warsztacie również odnoszą się do Java 17. Wiesz już na tym etapie o nowszych mechanizmach wprowadzanych w Java, ale my tutaj będziemy skupiać się na Springu, a nie na nowościach w Javie.
Jeżeli natomiast chodzi o Springa. Niektóre warsztaty zostaną zaprezentowane na podstawie Springa w wersji 5, a niektóre na podstawie Springa w wersji 6. Z Twojej perspektywy nie ma to znaczenia, gdyż nowości wprowadzane w Spring 6 i wyżej nie dotyczą tego, czego uczysz się na tym poziomie nauki. Chcemy jednak wykorzystać takie podejście, żeby pokazać Ci moment przejścia ze Springa 5 na Spring 6.
Gdy będziesz szukać zależności do Maven/Gradle, znajdziesz również Springa w wersji 6 lub wyższej. Zaznaczam to z tego powodu, że jeżeli my w materiałach będziemy pokazywali Springa 5, to Ty możesz realizować ten sam materiał na podstawie Springa 6. Poruszane przez nas zagadnienia nie ulegają wtedy zmianie. My stale monitorujemy sytuację i jeżeli wychodzą jakieś nowości, które mają znaczenie z perspektywy ścieżki Zajavka, są one dodawane w tej ścieżce. Podsumowując, możesz spokojnie korzystać z JDK 17 i Spring 5, możesz również korzystać z najnowszej Javy i najnowszego Springa. Jeżeli w Springu pojawi się coś nowego i istotnego, będzie to dodawane do ścieżki Zajavka ?. Najwygodniej jednak z Twojej perspektywy będzie korzystać z wersji przedstawionych na nagraniach.
Spring Data natomiast ma jeszcze swoją hierarchię wersji i ten warsztat jest nagrany w Spring Data 3.X. Tak samo jak wcześniej, jeżeli pojawi się w tym zakresie coś nowego i istnotnego z punktu widzenia ścieżki Zajavka, będziemy to dodawać na końcu tego warsztatu.
Wiemy już czym jest Spring i jakie są jego bardzo podstawowe możliwości. Wiemy już również na tym etapie, jak możemy testować aplikacje napisane w Spring. Do tego dowiedzieliśmy się już, w jaki sposób można połączyć Spring z komunikacją z bazami danych. Na tym etapie wiesz już, czym jest JPA oraz Hibernate i do czego służą. Przyszła najwyższa pora, żeby połączyć Spring z Hibernate i to będziemy robić w ramach tego warsztatu.
Na dole tego posta znajdziesz instrukcję instalacji narzędzi, które będą nam potrzebne, czyli PostgreSQL oraz DBeaver - upewnij się, że masz je zainstalowane u siebie na komputerze.
W tym kursie dowiesz się o kolejnym poziomie abstrakcji, który można wprowadzić korzystając z frameworka Spring. Jest to warsztat w którym będziemy koncentrować się wyłącznie na bazach danych.
Tematyka Warsztatu
Spring with Hibernate
Przykład wykorzystania Spring z Hibernate: Praktyczne zastosowanie Hibernate w projekcie Spring.
Adnotacja @PersistenceContext: Zastosowanie i konfiguracja adnotacji.
Spring Data JPA
Czym jest projekt Spring Data: Wprowadzenie do projektu Spring Data.
Czym jest projekt Spring Data JPA: Definicja i zastosowanie.
Kiedy tego używać i kiedy nie używać: Praktyczne wskazówki.
Interfejsy Spring Data JPA: Omówienie kluczowych interfejsów.
Konfiguracja Spring Data JPA: Jak skonfigurować Spring Data JPA w projekcie.
Query Methods: Tworzenie metod zapytań.
Named Queries i Named Native Queries: Przykłady i zastosowanie.
Adnotacja @Query: Użycie adnotacji @Query do definiowania zapytań.
Query by Example: Technika zapytań przez przykłady.
Entity Graph: Zastosowanie grafów encji.
Spring Data JPA - Paginacja i Sortowanie
Czym jest paginacja: Definicja i znaczenie.
Czym jest sortowanie: Definicja i znaczenie.
Przykłady sortowania i paginacji: Praktyczne zastosowanie.
Paginacja z sortowaniem: Połączenie obu technik.
Spring with Flyway
Zarządzanie schematem bazy danych: Różne metody.
Czym jest Flyway: Definicja i zastosowanie.
Konfiguracja Flyway: Jak skonfigurować Flyway w projekcie.
Migracje z Flyway: Zarządzanie migracjami bazy danych.
Spring Data JPA - Testy warstwy persystencji
Testy jednostkowe: Tworzenie i uruchamianie testów jednostkowych.
Testy integracyjne:
Baza in-memory: Konfiguracja i zastosowanie.
Współdzielona baza danych: Konfiguracja i zastosowanie.
Testcontainers: Użycie Testcontainers do testowania integracyjnego.
Test i Projekt
Test: Zadania sprawdzające zdobytą wiedzę.
Projekt: Praktyczne zastosowanie zdobytej wiedzy w projekcie.
Warsztat ten jest 17. warsztatem w ramach ścieżki Zajavka. Oczywiście możesz go realizować niezależnie od innych moich materiałów.
Baza tego warsztatu została opracowana w Java 17. Testy w tym warsztacie również odnoszą się do Java 17. Będziemy skupiać się na Springu, a nie na nowościach w Javie.
Jeżeli natomiast chodzi o Springa, to część elementów pokazujemy na Spring 5 a część 6. Z twojej perspektywy nie ma to znaczenia, gdyż nowości wprowadzane w Spring 6 i wyżej nie dotyczą tego, czego uczysz się na tym poziomie nauki.