Hibernate and Spring Data JPA: Beginner to Guru

Master Hibernate, Remove the mystery of Spring Data JPA - Use Spring Boot 3!

4.43 (877 reviews)
Udemy
platform
English
language
Databases
category
Hibernate and Spring Data JPA: Beginner to Guru
10,737
students
30.5 hours
content
Nov 2023
last update
$89.99
regular price

What you will learn

Learn about the Java JPA Specification and the Hibernate JPA Implementation

How to Query Data with JDBC, JDBC Template, Hibernate, and Spring Data JPA

Learn how to use JPA's Object Relational Mapping (ORM) to map Java POJOs to relational database tables

Understand JPA Relationships - One to One, One to Many, Many to One, and Many to Many

How to persist data to a relational database using JPA and Hibernate

How you can use Hibernate's Paging and Sorting features

Understand Database Transactions and How you can control them

Use Liqibase and Flyway to Manage Database Migrations

Understand How to Implement the DAO pattern using JDBC, JDBC Template, Hibernate, and Spring Data JPA

Learn to Generate Database Schemas from JPA Entities Using Hibernate

Use Advanced JPA features to map Legacy Databases

Why take this course?

Hibernate is the default JPA implementation used by Spring Data JPA.

NOTE: Java 17 and Spring Boot 3 are required for this course.

JPA stands for Java Persistence API. This is a common Java API used to work with Relational Databases.

Spring Data JPA is an abstraction built on top of the JPA API specification.

Being an abstraction, Spring Data JPA makes working with database entities very efficient.

Spring Data JPA eliminates a lot of the boilerplate / cerimonial code, and allows developers to focus on developing business logic.

The downside of the efficient abstraction is that accessing the database can become a mystery. Developers who just understand how to use Spring Data JPA do not understand the complexities of JDBC and Hibernate.

You will start this course with a basic demonstration of Spring Data JPA. In this section you will learn how to work with a H2 in-memory database.

You'll see how easy it is to work with Spring Data JPA. You will also begin to understand how the Hibernate interaction is being abstracted away.

Since JPA is the Java API for working with Relational Databases, the course takes a closer look at Relational Databases and MySQL specifically.

MySQL is the most popular open source relational database in the world. You will learn how to configure Spring Boot to test with a H2 in-memory database and to run integration tests against a MySQL database. This is a common real-world example leveraging the power of Spring and Hibernate to give you a very flexible environment.

Once we've established a persistent database, we can explore using database migration tools.

Liquibase and Flyway are two very popular database migration tools. Spring Boot supports both options. And you will learn about both options and database security best practices.

By establishing a MySQL database, Spring Boot Integration Tests, and automated database migrations we can use Test Driven Development to explore the features of JDBC and Hibernate.

In the course you will learn:

  • What is the DAO pattern, and how to implement it using JDBC, Spring's JDBCTemplate, and Hibernate

  • Relational Database Principles

  • Schema Creation in MySQL

  • Schema Generation using Hibernate

  • Database Migrations using Liquibase

  • Database Migrations using Flyway

  • Database Integration Testing using Spring Boot and JUnit 5

  • Defining Primary Key's with Hibernate

  • Hibernate Criteria Queries

  • Named JPA Queries

  • Spring Data JPA query methods

  • Spring Data JPA @Query Annotation

  • Entity Relationships - One to One, One to Many, Many to One, Many to Many

  • Embedded Types

  • Natural Keys

  • Composite Keys

  • Spring Data JPA Query Methods

  • Paging and Sorting

  • Database Transaction Management

  • Database Fetch Operations

  • Data Validation

  • JPA Inheritance

  • Hibernate Interceptors and Listeners

  • JPA Callbacks

  • Legacy Database Mapping

  • Using Multiple Data Sources

  • Spring Data REST

Learn Hibernate and Spring Data JPA - Enroll today!

Screenshots

Hibernate and Spring Data JPA: Beginner to Guru - Screenshot_01Hibernate and Spring Data JPA: Beginner to Guru - Screenshot_02Hibernate and Spring Data JPA: Beginner to Guru - Screenshot_03Hibernate and Spring Data JPA: Beginner to Guru - Screenshot_04

Reviews

Nandakumar
September 7, 2023
the instructor sharing his experiences gave me clarity on deciding which one to move forward with when we have multiple choices to select. But the instructor needs to assume that the students are starting with zero knowledge on the topic which i felt that he didn't do at some occasions. so i had to refer some other resources too
Lorraine
September 3, 2023
This is an excellent course. I hope to complete it. The author presents things in a logical manner and explains things quite well. I am learning quite a bit.
Timur
August 31, 2023
Another fantastic course by John Thompson. I'm a Java developer with over 15 years of professional experience and what I love most about "JT"'s courses are that he brings REAL industry knowledge and examples to the lessons. It's not some pie in the sky academic study of the theory behind something but real actual code you would see in any modern dev repo working with Spring. Yes, the lessons are VERY thorough. For this one I particularly enjoyed the walk down memory lane through raw JDBC, Spring JDBC Templates, Hibernate, and finally Spring Data JPA. As someone who has been around a while this was an excellent exercise to see how things have evolved over the years while being armed with the latest and greatest but still being able to support legacy code. Another fantastic course that works great as a linear progression through the lessons or as reference material. Thanks John!
Michael
July 24, 2023
Crisp and clear introduction, very well done. It walks you through all topics and doesn't leave things uncovered.
Corneliu-Iosif
June 12, 2023
Everything is thought very nice. The subjects are quite well defined. What I would have liked to learn more was more about Transactional Listeners
Hüseyin
April 16, 2023
Bu kursun beğendiğim yanı hibernate ve jpa high level birer api oldukları için temelden yukarı doğru gelmesi. Böylece temelde neleri kullanarak işi kolaylaştırıcı bu araçların ortaya çıktığını daha iyi anlıyorum
Рустам
April 12, 2023
good course but increase your pronunciation plz, because it is hard for people who watch this course with subtitles to understand
Ben
March 23, 2023
Yes, Section 9 Introduction to Spring Data JPA (along with some googling) is very helpful in understanding what all the different technologies are: JPA, Hibernate, JDBC and Spring Data JPA.
Uday
March 17, 2023
if you want to learn how to write sentence in english, he will start by explaining how shakespeare used to form sentences .... not for beginners
Vladimir
March 14, 2023
I was already learning another courses from John Thompson yet and I know that it will be an amazing course. I just really sure about it.
Rick
February 27, 2023
It was a very well covered topic. However some of the videos are getting a bit out of date. I still really enjoyed the material covered.
David
February 1, 2023
Upside - Very good info, and well organized, easy to understand. Downside - creating a lot of Git repos
Ferdi
January 21, 2023
overall it's not worth time Be sure this is not a guru course maybe a looong intro with unusefull repettive shits. Difficult to understand, he doesn't explain why he writes some code. don't waste your time with his ugly voice. to be honest he cannot speak clearly because of his ready to bomb belly.
Jerry
January 6, 2023
So far, everything went well, I was able to follow the steps. But one thing I noticed, some of the videos were still Spring Boot 2, just a minor thing. But all-in-all, a very good experience in learning.
Nelson
December 12, 2022
Good course, the instructor goes through many ways of how to use Hibernate and JPA; but, through many chapters we a forced to use migration tools like Flyway and there are tons of "copy and paste".

Charts

Price

Hibernate and Spring Data JPA: Beginner to Guru - Price chart

Rating

Hibernate and Spring Data JPA: Beginner to Guru - Ratings chart

Enrollment distribution

Hibernate and Spring Data JPA: Beginner to Guru - Distribution chart
4022034
udemy ID
5/2/2021
course created date
10/25/2021
course indexed date
Bot
course submited by