Master Spring Data JPA with Hibernate: E-Commerce Project

Learn Spring Data JPA Features and Learn to Build Domain Model Relationships for E-Commerce Project Using Hibernate ORM

$9.99 (93% OFF)
Get Course Now

About This Course

<div>This course supports both Spring Boot 2 and Spring Boot 3.</div><div><br></div><div>In this course, you will learn how to use Spring Data JPA and its features to reduce a lot of boilerplate code.</div><div><br></div><div>Throughout this course, we will build domain model entities (Product, ProductCategory, Order, OrderItems, User, Roles) and repositories for a simple e-commerce application.</div><div><br></div><div>Problem:</div><div><br></div><div>In typical three-layer Spring boot application architecture, we create three layers - Controller, Service, and DAO/Repository layer.</div><div><br></div><div>If we use JPA/Hibernate and then write a lot of coding while implementing DAO/Repository layer - We repeat the same code again and again so what will be the solution to reduce the boilerplate code?</div><div><br></div><div>Solution:</div><div><br></div><div>Spring Data JPA provides a solution to reduce a lot of boilerplate code.</div><div><br></div><div>We can use Spring Data JPA to reduce the amount of boilerplate code required to implement the data access object (DAO) layer.</div><div><br></div><div>Spring Data JPA is not a JPA provider. It is a library/framework that adds an extra layer of abstraction on top of our JPA provider (like Hibernate). Spring Data JPA uses Hibernate as a default JPA provider.</div><div><br></div><div>What you'll learn</div><div><ul><li><span style="font-size: 1rem;">Learn How to Use Spring Data JPA in the Spring Boot Application</span></li><li><span style="font-size: 1rem;">Learn How to Use JPA Annotations to Create an Entity and Map to a Database Table</span></li><li><span style="font-size: 1rem;">Learn 4 Types of Primary key Generation Strategies - AUTO, IDENTITY, SEQUENCE, and TABLE</span></li><li><span style="font-size: 1rem;">Learn How to Use the Lombok Library to Reduce a Boilerplate Code</span></li><li><span style="font-size: 1rem;">Learn Spring Data JPA Repository Interfaces and Its Hierarchy</span></li><li><span style="font-size: 1rem;">Learn Steps to Use Spring Data JPA Repository</span></li><li><span style="font-size: 1rem;">Learn Important Spring Data JPA Repository Methods (CRUD Operations)</span></li><li><span style="font-size: 1rem;">Learn How to Create Query Methods or Finder Methods Using Method Names</span></li><li><span style="font-size: 1rem;">Learn How to Create JPQL and Native SQL Queries Using @Query Annotation</span></li><li><span style="font-size: 1rem;">Learn How to Create JPQL and Native SQL Queries With Named Queries</span></li><li><span style="font-size: 1rem;">Learn How to Implement Pagination and Sorting Using Spring Data JPA</span></li><li><span style="font-size: 1rem;">Learn JPA/Hibernate One-to-One Mapping Using Spring Data JPA</span></li><li><span style="font-size: 1rem;">Learn JPA/Hibernate One to Many Mapping Using Spring Data JPA</span></li><li><span style="font-size: 1rem;">Learn JPA/Hibernate Many to Many Mapping Using Spring Data JPA</span></li><li><span style="font-size: 1rem;">Learn JPA Cascade Types and Fetch Types (EAGER and LAZY)</span></li><li><span style="font-size: 1rem;">Learn building domain model relationships for e-commerce projects using Hibernate ORM framework</span></li><li><span style="font-size: 1rem;">Learn to implement Search/Filter functionality</span></li><li><span style="font-size: 1rem;">Learn Transaction Management with Spring Data JPA and Spring Boot</span></li><li><span style="font-size: 1rem;">Unit Testing Spring Data JPA Repository using @DataJpaTest annotation</span></li></ul></div><div><span style="font-size: 1rem;">Tools and Technologies used</span></div><div><br></div><div>Technologies:</div><div><ul><li>Java 11+</li><li><span style="font-size: 1rem;">Spring Boot</span></li><li><span style="font-size: 1rem;">Spring Data JPA</span></li><li><span style="font-size: 1rem;">Hibernate</span></li><li><span style="font-size: 1rem;">Lombok</span></li><li><span style="font-size: 1rem;">Maven</span></li><li><span style="font-size: 1rem;">JUnit framework</span></li></ul></div><div><span style="font-size: 1rem;">IDE:</span></div><div><ul><li>IntelliJ IDEA</li></ul></div><div><span style="font-size: 1rem;">Database:</span></div><div><ul><li><span style="font-size: 1rem;">MySQL database</span></li></ul></div>

What you'll learn:

  • Learn How to Use Spring Data JPA in the Spring Boot Application
  • Build Domain Model Relationships for E-commerce Project Using Hibernate ORM Framework
  • Learn How to Use JPA Annotations to Create an Entity and Map to a Database Table
  • Learn 4 Types of Primary key Generation Strategies - AUTO, IDENTITY, SEQUENCE, and TABLE
  • Learn How to Use the Lombok Library to Reduce a Boilerplate Code
  • Learn Spring Data JPA Repository Interfaces and Its Hierarchy
  • Learn Steps to Use Spring Data JPA Repository
  • Learn Important Spring Data JPA Repository Methods (CRUD Operations)
  • Learn How to Create Query Methods or Finder Methods Using Method Names
  • Learn How to Create JPQL and Native SQL Queries Using @Query Annotation
  • Learn How to Create JPQL and Native SQL Queries With Named Queries
  • Learn How to Implement Pagination and Sorting Using Spring Data JPA
  • Learn JPA/Hibernate One to One Mapping Using Spring Data JPA
  • Learn JPA/Hibernate One to Many Mapping Using Spring Data JPA
  • Learn JPA/Hibernate Many to Many Mapping Using Spring Data JPA
  • Learn JPA Cascade Types and Fetch Types (EAGER and LAZY)
  • Learn to implement Search/Filter Functionality
  • Learn Transaction Management with Spring Data JPA and Spring Boot
  • Unit Testing Spring Data JPA Repository using @DataJpaTest annotation