% Off Udemy Coupon - CoursesWyn

Master Hibernate and JPA with Spring Boot in 100 Steps

Learn Hibernate, JPA (Java Persistence API) and Spring Data JPA using Spring and Spring Boot

$12.99 (89% OFF)
Get Course Now

About This Course

<div>Hibernate is the most popular Java ORM framework.&nbsp; Almost every Real World Project today uses JPA and Hibernate in combination with Spring Boot and Spring Data JPA.</div><div><br></div><div>Do you want to Learn JPA &amp; Hibernate and use them in combination with Spring Boot and Spring Data JPA?&nbsp; Do you want to Learn about Entities, Relationships, Entity Manager, JPQL, Native Queries, Inheritance Hierarchies, Criteria API, Transaction Management, Caching and Performance Tuning with JPA &amp; Hibernate in combination with Spring Data JPA and Spring Data REST?&nbsp;</div><div><br></div><div><span style="font-size: 1rem;">WHAT OUR LEARNERS ARE SAYING:</span></div><div><ul><li><span style="font-size: 1rem;">5 STARS - I really loved this course. The instructor explains features of JPA and Hibernate clearly and also very deeply. Especially I liked explanation of the transaction management what I didn't seen in other courses.By the way this course helped me to develop the persistence layer of a commercial application for my customer.</span></li><li><span style="font-size: 1rem;">5 STARS - Absolute brilliant course, I was struggling using books but this course helped me understand using code to demonstrate how Hibernate and JPA work. Each video builds on the next and is at a pace that does not overwhelm you. I thoroughly recommend this course if you need to improve your Hibernate and JPA knowledge.</span></li><li><span style="font-size: 1rem;">5 STARS - It is really state of the art and how spring boot and hibernate are used nowadays! This course was very helpful in my new job, since in the project we use spring boot and hibernate. Thank you!</span></li><li><span style="font-size: 1rem;">5 STARS - This course exceeded my expectations, I thought I knew about hibernate but I discovered I didn't, I really recommend this course.</span></li><li><span style="font-size: 1rem;">5 STARS - Thanks Ranga for the wonderful course on Hibernate and JPA with Spring Boot! It's a long course and well worth it. Keep up the great work!</span></li></ul></div><div><span style="font-size: 1rem;">COURSE OVERVIEW</span></div><div><br></div><div>Hibernate is the most popular implementation of JPA. It was the most popular ORM framework option before JPA emerged and it provides additional features on top of JPA. We will use Hibernate as the JPA implementation in this course.</div><div><br></div><div>The Java Persistence API provides Java developers with an api for mapping java objects to relational data. In this course, you will learn about the Hibernate, JPA API, JPQL (Java Persistence query language), Java Persistence Criteria API and how you can perform ORM (Object Relational Mapping) with JPA and Hibernate.&nbsp;</div><div><br></div><div>During this course</div><div><ul><li><span style="font-size: 1rem;">You will learn the basics of JPA and Hibernate - Entities, Relationships, Inheritance Mappings and Annotations</span></li><li><span style="font-size: 1rem;">You will understand approaches to querying data using JPA and Hibernate - JPQL, Criteria API and Native Queries</span></li><li><span style="font-size: 1rem;">You will understand JPA and Hibernate Relationships in depth - One to One, Many to One and Many to Many</span></li><li><span style="font-size: 1rem;">You will use a variety of Spring Boot Starters - Spring Boot Starter Web, Starter Data Jpa, Starter Test</span></li><li><span style="font-size: 1rem;">You will learn the basic of performance tuning your JPA application with Hibernate - Solve N+1 Queries Issue.&nbsp;</span></li><li><span style="font-size: 1rem;">You will learn the basics of caching - First Level Cache and Second Level Cache with EhCache</span></li><li><span style="font-size: 1rem;">You will understand the basics of Spring Data JPA and Spring Data REST</span></li></ul></div><div><br></div><div>COURSE HIGHLIGHTS</div><div><br></div><div>Journey from JDBC To JPA</div><div><ul><li><span style="font-size: 1rem;">Step01 - Setting up a project with JDBC, JPA, H2 and Web Dependencies</span></li><li><span style="font-size: 1rem;">Step02 - Launching up H2 Console</span></li><li><span style="font-size: 1rem;">Step03 - Creating a Database Table in H2</span></li><li><span style="font-size: 1rem;">Step04 - Populate data into Person Table</span></li><li><span style="font-size: 1rem;">Step05 - Implement findAll persons Spring JDBC Query Method</span></li><li><span style="font-size: 1rem;">Step06 - Execute the findAll method using CommandLineRunner</span></li><li><span style="font-size: 1rem;">Step07 - A Quick Review - JDBC vs Spring JDBC</span></li><li><span style="font-size: 1rem;">Step08 - Whats in the background? Understanding Spring Boot Autoconfiguration</span></li><li><span style="font-size: 1rem;">Step09 - Implementing findById Spring JDBC Query Method</span></li><li><span style="font-size: 1rem;">Step10 - Implementing deleteById Spring JDBC Update Method</span></li><li><span style="font-size: 1rem;">Step11 - Implementing insert and update Spring JDBC Update Methods</span></li><li><span style="font-size: 1rem;">Step12 - Creating a custom Spring JDBC RowMapper</span></li><li><span style="font-size: 1rem;">Step13 - Quick introduction to JPA</span></li><li><span style="font-size: 1rem;">Step14 - Defining Person Entity</span></li><li><span style="font-size: 1rem;">Step15 - Implementing findById JPA Repository Method</span></li><li><span style="font-size: 1rem;">Step16 - Implementing insert and update JPA Repository Methods</span></li><li><span style="font-size: 1rem;">Step17 - Implementing deleteById JPA Repository Method</span></li><li><span style="font-size: 1rem;">Step18 - Implementing findAll using JPQL Named Query</span></li></ul></div><div><br></div><div>JPA/Hibernate in Depth</div><div><ul><li><span style="font-size: 1rem;">Step01 - Create a JPA Project with H2 and Spring Boot</span></li><li><span style="font-size: 1rem;">Step02 - Create JPA Entity Course</span></li><li><span style="font-size: 1rem;">Step03 - Create findById using JPA Entity Manager</span></li><li><span style="font-size: 1rem;">Step04 - Configuring application.properties to enable H2 console and additional logging</span></li><li><span style="font-size: 1rem;">Step05 - Writing Unit Test for findById method</span></li><li><span style="font-size: 1rem;">Step06 - Writing a deleteByID method to delete an Entity</span></li><li><span style="font-size: 1rem;">Step07 - Writing Unit Test for deleteById method</span></li><li><span style="font-size: 1rem;">Step08 - Writing a save method to update and insert an Entity</span></li><li><span style="font-size: 1rem;">Step09 - Writing Unit Test for save method</span></li><li><span style="font-size: 1rem;">Step10 - Quick Review and Debugging Tips</span></li><li><span style="font-size: 1rem;">Step11 - Playing with Entity Manager</span></li><li><span style="font-size: 1rem;">Step12 - Entity Manager Methods - clear and detach</span></li><li><span style="font-size: 1rem;">Step13 - Entity Manager Methods - refresh</span></li><li><span style="font-size: 1rem;">Step14 - A Quick Review of Entity Manager</span></li><li><span style="font-size: 1rem;">Step15 - JPQL - Basics</span></li><li><span style="font-size: 1rem;">Step16 - JPA and Hibernate Annotations - @Table</span></li><li><span style="font-size: 1rem;">Step17 - JPA and Hibernate Annotations - @Column</span></li><li><span style="font-size: 1rem;">Step18 - JPA and Hibernate Annotations - @UpdateTimestamp and @CreationTimestamp</span></li><li><span style="font-size: 1rem;">Step19 - JPA and Hibernate Annotations - @NamedQuery and @NamedQueries</span></li><li><span style="font-size: 1rem;">Step20 - Native Queries - Basics</span></li><li><span style="font-size: 1rem;">Step21 - Entities and Relationships - An overview</span></li><li><span style="font-size: 1rem;">Step22 - Defining Entities - Student, Passport and Review</span></li><li><span style="font-size: 1rem;">Step23 - Introduction to One to One Relationship</span></li><li><span style="font-size: 1rem;">Step24 - OneToOne Mapping - Insert Student with Passport</span></li><li><span style="font-size: 1rem;">Step25 - OneToOne Mapping - Retrieving Student with Passport and Eager Fetch</span></li><li><span style="font-size: 1rem;">Step26 - OneToOne Mapping - Lazy Fetch</span></li><li><span style="font-size: 1rem;">Step27 - Session vs Transaction</span></li><li><span style="font-size: 1rem;">Step28 - OneToOne Mapping - Bidirectional Relationship - Part 1</span></li><li><span style="font-size: 1rem;">Step29 - OneToOne Mapping - Bidirectional Relationship - Part 2</span></li><li><span style="font-size: 1rem;">Step30 - ManyToOne Mapping - Designing the database</span></li><li><span style="font-size: 1rem;">Step31 - ManyToOne Mapping - Retrieving and inserting Reviews for Course</span></li><li><span style="font-size: 1rem;">Step32 - ManyToOne Mapping - Generalizing Insert Reviews</span></li><li><span style="font-size: 1rem;">Step33 - ManyToOne Mapping - Wrapping up</span></li><li><span style="font-size: 1rem;">Step34 - ManyToMany Mapping - Table Design</span></li><li><span style="font-size: 1rem;">Step35 - ManyToMany Mapping - Adding Annotations on Entities</span></li><li><span style="font-size: 1rem;">Step36 - ManyToMany Mapping - Fixing two join tables problem</span></li><li><span style="font-size: 1rem;">Step37 - ManyToMany Mapping - Customizing the Join Table</span></li><li><span style="font-size: 1rem;">Step38 - ManyToMany Mapping - Insert Data and Write Join Query</span></li><li><span style="font-size: 1rem;">Step39 - ManyToMany Mapping - Retrieve Data using JPA Relationships</span></li><li><span style="font-size: 1rem;">Step40 - ManyToMany Mapping - Insert Student and Course</span></li><li><span style="font-size: 1rem;">Step41 - Relationships between JPA Entities - A summary</span></li><li><span style="font-size: 1rem;">Step42 - Introduction to Inheritance Hierarchies and Mappings</span></li><li><span style="font-size: 1rem;">Step43 - JPA Inheritance Hierarchies and Mappings - Setting up entities</span></li><li><span style="font-size: 1rem;">Step44 - JPA Inheritance Hierarchies and Mappings - Setting up a Repository</span></li><li><span style="font-size: 1rem;">Step45 - JPA Inheritance Hierarchies and Mappings - Single Table</span></li><li><span style="font-size: 1rem;">Step46 - JPA Inheritance Hierarchies and Mappings - Table Per Class</span></li><li><span style="font-size: 1rem;">Step47 - JPA Inheritance Hierarchies and Mappings - Joined</span></li><li><span style="font-size: 1rem;">Step48 - JPA Inheritance Hierarchies and Mappings - Mapped Super Class</span></li><li><span style="font-size: 1rem;">Step49 - JPA Inheritance Hierarchies and Mappings - How to Choose?</span></li><li><span style="font-size: 1rem;">Step50 - JPQL - Courses without Students</span></li><li><span style="font-size: 1rem;">Step51 - JPQL - Courses with atleast 2 Students and order by</span></li><li><span style="font-size: 1rem;">Step52 - JPQL - Courses like 100 Steps</span></li><li><span style="font-size: 1rem;">Step53 - JPQL - Using Joins</span></li><li><span style="font-size: 1rem;">Step54 - Criteria Query - Retrieving all courses</span></li><li><span style="font-size: 1rem;">Step55 - Criteria Query - Courses like 100 Steps</span></li><li><span style="font-size: 1rem;">Step56 - Criteria Query - Courses without Students</span></li><li><span style="font-size: 1rem;">Step57 - Criteria Query - Using Joins</span></li><li><span style="font-size: 1rem;">Step58 - Introduction to Transaction Management</span></li><li><span style="font-size: 1rem;">Step59 - Transaction Management - ACID Properties</span></li><li><span style="font-size: 1rem;">Step60 - Understanding Dirty, Phanthom and Non Repeatable Reads</span></li><li><span style="font-size: 1rem;">Step61 - Understand 4 Isolation Levels</span></li><li><span style="font-size: 1rem;">Step62 - Choosing between Isolation Levels</span></li><li><span style="font-size: 1rem;">Step63 - Implementing Transaction Management - 3 Things to Decide</span></li><li><span style="font-size: 1rem;">Step64 - Introduction to Spring Data JPA</span></li><li><span style="font-size: 1rem;">Step65 - Testing the Spring Data JPA Repository with findById.</span></li><li><span style="font-size: 1rem;">Step66 - Spring Data JPA Repository - CRUD Methosd</span></li><li><span style="font-size: 1rem;">Step67 - Sorting using Spring Data JPA Repository</span></li><li><span style="font-size: 1rem;">Step68 - Pagination using Spring Data JPA Repository&nbsp;</span></li><li><span style="font-size: 1rem;">Step69 - Custom Queries using Spring Data JPA Repository&nbsp;</span></li><li><span style="font-size: 1rem;">Step70 - Spring Data REST</span></li><li><span style="font-size: 1rem;">Step71 - Introduction to Caching</span></li><li><span style="font-size: 1rem;">Step72 - Hibernate and JPA Caching - First Level Cache</span></li><li><span style="font-size: 1rem;">Step73 - Hibernate and JPA Caching - Basics of Second Level Cache with EhCache</span></li><li><span style="font-size: 1rem;">Step74 - Hibernate and JPA Caching - Second Level Cache Part 2</span></li><li><span style="font-size: 1rem;">Step75 - Hibernate Tips - Hibernate Soft Deletes - @SQLDelete and @Where</span></li><li><span style="font-size: 1rem;">Step76 - Hibernate Soft Deletes - Part 2</span></li><li><span style="font-size: 1rem;">Step77 - JPA Entity Life Cycle Methods</span></li><li><span style="font-size: 1rem;">Step78 - Using Embedded and Embeddable with JPA</span></li><li><span style="font-size: 1rem;">Step79 - Using Enums with JPA</span></li><li><span style="font-size: 1rem;">Step80 - JPA Tip - Be cautious with toString method implementations</span></li><li><span style="font-size: 1rem;">Step81 - JPA Tip - When do you use JPA?</span></li><li><span style="font-size: 1rem;">Step82 - Performance Tuning - Measure before Tuning</span></li><li><span style="font-size: 1rem;">Step83 - Performance Tuning - Indexes</span></li><li><span style="font-size: 1rem;">Step84 - Performance Tuning - Use Appropriate Caching</span></li><li><span style="font-size: 1rem;">Step85 - Performance Tuning - Eager vs Lazy Fetch</span></li><li><span style="font-size: 1rem;">Step86 - Performance Tuning - Avoid N+1 Problems</span></li></ul></div><div><br></div><div>Hibernate Tips &amp; Tricks</div><div><ul><li><span style="font-size: 1rem;">When does Hibernate send updates to the database?</span></li><li><span style="font-size: 1rem;">When do we need @Transactional in an Unit Test?</span></li><li><span style="font-size: 1rem;">Do read only methods need a transaction?</span></li><li><span style="font-size: 1rem;">Why do we use @DirtiesContext in an Unit Test?</span></li><li><span style="font-size: 1rem;">How to connect to a different database with Spring Boot?</span></li><li><span style="font-size: 1rem;">How do you approach designing great applications with JPA?</span></li><li><span style="font-size: 1rem;">Good Practices for developing JPA Applications</span></li></ul></div><div><br></div><div>Start Learning Now. Hit the Enroll Button!</div>

What you'll learn:

  • You will learn the basics of JPA and Hibernate - Entities, Relationships, Inheritance Mappings and Annotations
  • You will understand approaches to querying data using JPA and Hibernate - JPQL, Criteria API and Native Queries
  • You will understand JPA and Hibernate Relationships in depth - One to One, Many to One and Many to Many
  • You will use a variety of Spring Boot Starters - Spring Boot Starter Web, Starter Data Jpa, Starter Test
  • You will learn the basic of performance tuning your JPA application with Hibernate - Solve N+1 Queries Issue
  • You will learn the basics of caching - First Level Cache and Second Level Cache with EhCache
  • You will understand the basics of Spring Data JPA and Spring Data REST