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
Udemy is the largest open marketplace for online courses on the internet. Founded in 2010 by Eren Bali, Oktay Caglar, and Gagan Biyani and headquartered in San Francisco, the company went public on the Nasdaq in 2021 under the ticker UDMY. The platform hosts well over two hundred thousand courses across software development, IT and cloud, data science, design, business, marketing, and creative skills, taught by tens of thousands of independent instructors. Roughly seventy million learners use it worldwide, and the corporate arm — Udemy Business — supplies a curated subset of that catalog to enterprise customers.
Because Udemy is a marketplace rather than a single editorial publisher, the catalog is uneven by design. The strongest material lives in the long-form, project-based courses authored by working engineers — full-stack JavaScript, React, Node.js, Python data science, AWS, Docker and Kubernetes, mobile development with Flutter and React Native, and cloud certification preparation. The CourseFlix listing under this source is the slice of that catalog that has been mirrored here for offline-friendly viewing, organized by topic and updated as new releases land. Pricing on Udemy itself swings dramatically with the site's near-permanent sales, which is why the platform is best treated as a deep reference catalog: pick instructors with strong reviews and a track record of updating their material rather than buying on the headline price alone.
Watch Online 242 lessons
This is a demo lesson (10:00 remaining)
You can watch up to 10 minutes for free. Subscribe to unlock all 242 lessons in this course and access 10,000+ hours of premium content across all courses.
Are you ready to get more out of JDBC and your data using smart, streamlined techniques? This Hibernate course is a great place to start. You will start by lear
Master Spring Framework 6, Spring Boot 3, REST APIs, JPA, Hibernate — build web applications with the latest Spring Boot 3 stack and modern best practices.
Spring is an enterprise Java framework. It was designed to simplify Java EE development and make developers more productive. Spring makes use of Inversion of Co
33h 41m5/5
Frequently asked questions
What are the prerequisites for enrolling in this course?
The course requires knowledge of Java 17 and Spring Boot 3. These are integral for understanding the course material, as Spring Data JPA builds on top of the JPA API, and Spring Boot is used for application configuration and deployment. Familiarity with relational databases and basic SQL is also beneficial, given the course’s focus on database manipulation and management.
What projects or applications will I build during the course?
Participants will work on setting up a Spring Boot application integrated with a relational database, using Spring Data JPA. The course includes practical exercises such as creating JPA entities, configuring MySQL with Spring Boot, and using H2 for application testing. Students will also engage with schema initialization and data bootstrapping, and explore database version control with Liquibase and Flyway.
Who is the target audience for this course?
This course is designed for Java developers who want to enhance their skills with Spring Data JPA and Hibernate. It is suitable for beginners transitioning to more advanced database management in Java applications, as well as for experienced developers looking to streamline database operations and reduce boilerplate code in their projects.
How does this course compare in depth and scope to other courses?
The course offers a comprehensive introduction to Hibernate and Spring Data JPA, with 242 lessons that cover a wide range of topics from basic JPA entities to complex schema manipulations. It provides a detailed exploration of database principles, integration testing, and version control with Liquibase and Flyway. This depth is suitable for a thorough grounding in the subject, making it more extensive than many introductory courses.
What specific tools or platforms will I learn to use?
Students will engage with tools and platforms such as Spring Initializr for project setup, the H2 database console for testing, and MySQL for database configuration. The course also teaches how to use Liquibase and Flyway for database version control, and the use of GitHub for version management. These tools are essential for the efficient development and management of Java applications using Spring Data JPA.
What topics are not covered in this course?
The course does not cover advanced topics beyond the scope of Spring Data JPA and Hibernate, such as microservices architecture, non-relational databases, or front-end development technologies. It focuses strictly on relational database management using Java, providing a solid foundation for database operations but not delving into areas like NoSQL databases or cloud-based database solutions.
What is the time commitment required for this course?
With 242 lessons, the course requires a significant time investment to complete. While the exact runtime is not specified, students should plan for multiple weeks of study, depending on their pace. The course is structured into manageable sections, allowing learners to progress through topics such as JPA entities, database configuration, and testing at a steady rate. Regular practice and review are recommended to fully grasp the material.