Java EE: wprowadzenie do persystencji – Hibernate

Uwaga: Aby zrealizować to laboratorium należy posiadać wersję Ultimate Intellij Idea oraz działający serwer MySQL.

Link do kodu źródłowego skryptu, generującego schemat bazy danych: https://pastebin.com/bF09WjE3 Skrypt należy wykonać przed przystąpieniem do realizacji laboratorium.

Realizacja laboratorium:

Po uruchomieniu programu IntelliJ IDEA należy kliknąć New Project. Ukaże się okno dialogowe, które należy uzupełnić w podany poniżej sposób:

Wybrano Java Enterprise z szablonem biblioteki. Po ustawieniu wartości należy kliknąć Next.

W kolejnym oknie z listy implementacji należy wybrać Hibernate i nacisnąć Create.

Utworzony zostanie projekt. Z drzewa plików należy wybrać plik pom.xml. Ukaże się następująca treść:

Kolejnym krokiem będzie dodanie do projektu drivera JDBC dla bazy MySQL. W tym celu należy kliknąć w znacznik <dependencies>, nacisnąć klawisze ALT+INSERT i z listy wybrać Add Dependency…

Środowisko przełączy się na zakładkę zależności. W tej zakładce w polu wyszukiwania należy wpisać frazę mysql. Z listy nalezy wybrać najnowszą wersję sterownika JDBC bazy danych i kliknąć przycisk Add.

Po dodaniu sterownika bazy danych należy utworzyć źródło danych. W tym celu w prawej części okna należy wybrać zakładkę Database. Po jej rozwinięciu kliknąć + i zaznaczyć Data source -> MySQL

Okno z danymi należy uzupełnić w podany sposób (podając własną nazwę użytkownika oraz hasło), a następnie kliknąć Test connection. W przypadku powodzenia testu kolejnym krokiem będzie kliknięcie Ok.

W zakładce Database pojawi się schemat naszej bazy danych.

Kolejnym krokiem będzie utworzenie Encji. Jest to możliwe po wybraniu View->Tool windows->Persistence…

Ukaże się zakładka persystencji. Należy kliknąć prawym przyciskiem myszy na default, przejść do Generate Persistence Mapping i wybrać By Database Schema.

Wyświetli się okno dialogowe, które należy uzupełnić w następujący sposób:

Po kliknięciu Ok wyświetli się okno dialogowe. Należy wybrać paczkę main:

Środowisko utworzyło klasy Encji. Można je podejrzeć:

W paczce Java należy utworzyć klasę Main z publiczną statyczną metodą Main:

Utworzymy teraz encję za pomocą kodu źródłowego:

Aby wykonać powyższy kod należy jeszcze klasę AddressInfoEntity zmodyfikować przez uzupełnienie adnotacji o poniższą konstrukcję:

Oraz utworzyć konfigurację:

Po uruchomieniu programu należy rozwinąć tabelę person w zakładce Database.

Wojciech Suchodolski pojawił się w bazie danych.

Zadanie:

Na podstawie tego laboratorium należy zaimplementować funkcjonalność, pozwalającą na sekwencyjne dodawanie osób do bazy danych po wpisaniu ich danych z klawiatury w oknie konsoli.