Koledzy podali Ci coś w języku angielskim jeśli interesuje Cię jednak coś w języku polskim to polecam:
https://www.youtube.com/watch?v=1xpmEj5o3uY&list=PL_nu3rOfoPo6CyGju2JBz7C3FW-bcKDdn&index=25.
Co prawda aplikacja pokazana jest w SWINGu, więc odradzam to podejście i polecam stworzyć coś z użyciem JavaFX. Nie mniej zaprezentowane jest w fajny przyjazny sposób. Co do komunikacją z baża danych JDBC! Nie mówię, że hibernate jest zły, ale najpierw należy poznać JDBC i stworzyć chociażby prosty projekt. W tym tutorialu zaprezentowane jest to w fajny sposób :).
Co do wybrania konretnej bazy danych to polecam posgreSQL.