Java Persistence: Hibernate and JPA (Udemy.com)
A simple-to-follow and easy-to-understand course on Java Persistence API (JPA) with Hibernate
Created by: Deshraj Singh Kiran
Last updated July 2026
What you will learn
- By the end of this course, you'll be having a strong foundation on Java Persistence with Hibernate
- The fundamentals and some of the advanced JPA features for Object/Relational Mapping, Querying, Caching, Performance Optimizations and Concurrency
- The fundamentals of First & Second Level Caching, N+1 Selects Problem & Batch Fetching, Optimistic Locking & Versioning
- The fundamentals of Entity Relationships, Inheritance Mapping & Polymorphic Queries
- The fundamentals of Querying database using JPQL and Criteria API (JPA)
- The fundamentals of Handling Long Conversations with Merging Detached Object and Extended Persistence Context
- The fundamentals of Database Isolation Rules
- Some of the Best Practices of Java Persistence with Hibernate
How it compares
Against the other 231 rated Udemy courses in Java on CourseDuck:
- Rating4.6 out of 5higher than 71% of them
- Reviews7,383#36 of 232 by number of reviews
- Length15 hourslonger than 69% of them
- Last updatedJuly 2026more recently than 84% of them
Quality Score
Overall Score : 92 / 100
Course Description
If you’re a Java programmer who wants to learn the essentials and some of the advanced topics of Java Persistence with Hibernate, then you’re the one this course is designed for.
We'll be working with Hibernate 4 (with updates for Hibernate 5 & 6), and using Hibernate as a JPA Provider for the most part of this course.
You'll be learning the essentials and some of the advanced JPA features for Object/Relational Mapping, Querying, Caching, Fetching Strategies, Performance Optimizations and Concurrency.
We’ll also talk about Best Practices and how to resolve some of the common performance bottlenecks.
The course includes many Lab-Exercises in which we have tasks, Q&A and quizzes for students to revise the concepts learnt in the lectures. We also have expanded discussions on some of those lab-exercises.
We also discuss the SQL at runtime and the performance implications of it.
The Maven source-code provided with the course currently uses the Hibernate version 6.
We try to keep updating the course by adding more and new relevant topics as well. For example, the most recent topic added to the course was Embeddable Inheritance, which was introduced in Hibernate version 6.6.
We've used MySQL in the course as the RDBMS.
Instructor Details
- 4.6 Rating
7,383 Reviews
Deshraj Singh Kiran
I am a Bachelor of Technology (B Tech) from Indian Institute of Technology (IIT) with around 9 years of application development experience (as of April, 2016). I have been developing applications of various complexities using Java-based technologies and frameworks such as Java/JavaEE, Spring, Spring MVC, Spring WebFlow, Spring Security, Spring Boot, Microservices, Spring Cloud, Portlet, Spring Portlet MVC, Struts, Hibernate, DWR, Lucene, Android and Hadoop.
Besides being a trainer at MavenEdge, I am also a working Software Consultant. I've also been a corporate trainer on Java technologies and frameworks.
I've worked on Tomcat, Glassfish, JBoss, Liferay Portal, Jenkins for application development, deployment and release management.
I've worked more on Maven than Gradle and Ant. And in the world of relational database management systems, I've worked mostly on MySQL and PostgreSQL.
For test driving my code I've used JUnit, EasyMock, Mockito frameworks.
Besides working on the server-end, I've also explored the front-end world of JavaScript, jQuery, Backbone, Require JS and MEAN stack.
I took some Oracle certifications as well along the way.
Currently, I am working on a Scalable NLP project.
Reviews
By Ivan Veselovskii on 4/9/2026
Pros: 1) the course covers all important aspects of JPA/Hibernate. Cons: 1) it refers a lot of outdated technologies . The current Hibernate version is 7.3.0 , not 6.x . jakarta.persistence.* shall be used everywhere, not javax.persistence.*. 2) try-with-resources shall be used for EntityManagerFcatory, EntityManager. 3) Java records shall be used for Value objects (@Embeddable). 4) equals/hashCode on Entities shall be generated (with Lombok or another tool). manual writing them is too error-prone and just contaminates the classes with boiler-plate code. 5) better to focus on JPA API, not Hibernate native features (Session). 6) personal, subjective opinion: would be better to read the lectures by a neutral synthetic AI voice.
By Matt Clark on 12/20/2025
good so far, helpful content, cleared up many of my doubts. after completing 100%: it is a brilliant course to understand how Hibernate-JPA works. it definitely did the job for me. for a fundamentals course it is quite comprehensive. it dives into a lot of detail and covers many aspects of JPA as you go deeper in the course. hope he keeps adding more topics.
By António Morado Ramos on 7/14/2024
It is an excelent JPA course introduction. Deshraj explains the JPA concepts in a clear and direct way with simple and enlightening examples. The course uses hibernate, but Deshraj describes JPA concepts in a generic way, which allows you to understand other frameworks similar to hibernate. Congratulations Mr. Deshraj.
By Simon Orth on 6/3/2024
As a lecture it is a very good course to give you an overview and a start into Java Persistence. There are not too many exercises to get into coding yourself. But i guess you can find those elsewhere. One start deducted as the setup did not work as shown and needed some debugging. (As that is not a priority in this course, it's not really an issue)
By Vitalij Stolyarov on 11/9/2023
It was amazing diving into Hibernate fundamentals concepts!!! I really enjoyed this course. The instructor explains difficult things in very simple way! Also he always replies on your questions and helps to resolve some problems. I understand basics (but so important) concepts very clearly. Thank you very much, Mr. Deshraj Singh Kiran, you're the best :)
By Anonymized User on 7/16/2023
This course is amazing, covered all the concepts of Java persistence (JDBC, JPA and Hibernate). The instructor goes further on the topics to give us strong knowledge. I loved the best practices section, it's a handy guide to work with Hibernate/JPA. Certainly, this course will help me to handle complex Java applications with persistence feature.
By Imran Mohammed on 4/12/2022
Course explains the topic(s) very well, instructor took lot of effort on course content to explain the topic. Just felt instructor was trying to imitate English accent, which was really bothering me, could not hear for long, eventually after multiple attempts forced myself to get used to it :D, but its just my brain not related to instructor.
By Rodrigo Geve on 11/7/2020
The narrator's spoken / intonation is distracting.
By Leoni Lubbinge on 10/20/2020
Excellent, explains difficult concepts well.
By Igor Ilievski on 9/18/2020
all good but few things missing -> sample database with preloaded data, tests should be better organized
By Sunilraj Ravindra on 9/11/2020
Q & A support was amazing. I took the course for an immediate implementation in my current project. I had few implementation challenges and Deshraj helped me to resolve it.
By Balakrishna K on 9/6/2020
Informative




