Przechodzimy do sedna sprawy. Ciężko jest tłumaczyć Hibernate'a nie pokazując konkretnych przykładów na to o czym mówimy.
Dlatego zebraliśmy wszystkie istotne tematy i przygotowaliśmy specjalny projekt, który pozwoli Ci nabyć szerokie umiejętności
w pracy z Hibernatem.
Projekt zawiera ponad 30 klas, ale nie jest to program, który przetwarza skomplikowaną logikę biznesową. Jest to kolekcja konkretnych przypadków użycia wszystkich istotnych rozwiązań jakie dostarcza framework, zebrana w jednym miejscu i działająca z jedną bazą danych w tle.
Co więcej, nie musisz instalować własnej bazy danych. Wszystko dzieje się automatycznie, gdyż korzystamy z wbudowanej bazy danych
H2. W kolejnym rozdziale pokażemy Ci jak podpinamy taką bazę do projektu.
Pakiet domain - Encje w projekcie
To co widzisz na powyższym zdjęciu w pakiecie
domain, to wszystkie encje jakie znajdują się w programie. Możesz spodziewać się podobnych tabel w bazie,
choć tutaj wraz z postępem kursu dowiesz się, że nie jest to regułą. Może być tak, że jednej tabeli odpowiada nawet kilka encji.
Jest to specyficzny przypadek, ale tym też będziemy się zajmować.
Pakiet repository - DAO vs Spring Repository
W pakiecie
repository znajduje się warstwa bezpośrednio komunikująca się z bazą danych. Często mówimy o takim miejscu, że jest to
warstwa
DAO (Data Access Object), natomiast w Springu mamy do tego specjalnie opracowane rozwiązanie o nazwie
Repository.
Jest to niezależnie przygotowany zbiór klas i interfejsów tworzących warstwę, która ułatwia pracę na danych w kontekście ich zapisu i odczytu z bazy.
Zawiera całe mnóstwo predefiniowanych zapytań, których użycie jest bardzo proste, nawet po krótkim wprowadzeniu w temat.
Do tego możesz tutaj dopisywać również własne zapytania.
Pakiet service
Pakiet
service zawiera bardzo lekką logikę biznesową programu, która w głównej mierze opiera się na wywoływaniu metod z repozytorium.
Serwisy zostały przygotowane tak, aby można było łatwo znaleźć konkretny problem i jego rozwiązanie.
Uruchomienie programu
Program startuje standardowo przy użyciu Spring Boot-a. Klasa
SpringHibernateInPracticeApplication zawiera następujący kod uruchomieniowy:
Jak widzisz projekt jest bardzo prosty w użyciu. Wydzieliliśmy osiem zagadnień, które są kluczowe w pracy z frameworkiem.
Każdego z nich możesz uczyć sie niezależnie. Wystarczy, że ustawisz stałą
APP_MODE na jedną z wartości z enuma
SpringHibernateInPracticeMode,
a następnie uruchomisz program. Wtedy wystartuje on z funkcjonalnością, której chcesz się nauczyć. Wszystkiemu towarzyszą
wytłumaczenia zawarte tym kursie.
Oczywiście powyższe tryby działają w oparciu o wcześniej przygotowane struktury Hibernate'a, co powoduje że najpierw musisz dokładnie je poznać.
Zapraszamy więc na podróż po kodzie. Pierwsza stacja to prezentacja tego jak wdrażamy Hibernate'a w projekcie Spring oraz pierwsze uruchomienie programu.
Kolejną będzie stworzenie pierwszej encji, a także wykonywanie operacji
CRUD (Create, Read, Update, Delete).
Następnie zbudujemy relację jeden do jednego, jeden do wiele i wiele do wielu. W dalszej kolejności wytłumaczymy bardziej zaawansowane, ale równie istotne zagadnienia.
Spring Boot i Hibernate - Dobrana para
Po ściągnięciu projektu
spring-hibernate-materialy-praktyczne otrzymasz gotowy do uruchomienia kod.
Co jednak,
gdy sam chesz wdrożyć Hibernate'a w projekcie Spring Boot, w którym go do tej pory nie było? To co musisz zrobić zawiera się w zaledwie
kilku krokach...
Pełny materiał ze wszystkimi źródłami kodu jest dostępny po wykupieniu pakietu. Zapraszamy!
Jeśli zakupiłeś materiał zaloguj się tutaj, aby uzyskać dostęp.