https://medium.com/@nagarjunmallesh/simplifying-persistence-in-java-applications-with-spring-boot-and-hibernate-27596f4341bb