Java SpringBoot and JPA Online Course

description

Bookmark Enrolled Intermediate

Java SpringBoot and JPA Online Course

This course gives you hands-on experience in building real-world software projects using modern stacks like Java, Spring, Spring Boot, Hibernate, JPA, and RESTful web services. You’ll learn how these technologies work together, explore design patterns, ORM, and layered architecture, and implement features like API documentation, health monitoring, and code quality checks. With practical tools like Swagger, Sonar, Maven, and Postman, you’ll develop a production-ready Property Management System, gaining the skills to create applications that end users can rely on.

Who should take this course

This course is designed for Java developers, backend engineers, and software professionals who want to build scalable and efficient applications using Spring Boot and JPA. It’s also suitable for students and beginners familiar with Java who wish to learn how to develop RESTful APIs, manage databases, and implement persistence in modern enterprise applications.

What you will learn

  • Create production-ready application in a layered architecture
  • Study about Swagger API documentation and Maven build management tool
  • Get hands-on knowledge to solve code quality issues using the Sonar Scan tool
  • Understand debugging techniques for multi-layer application
  • Test REST API with Postman client and application monitoring using Actuator

Course Outline

Introduction Setup and Concept Building

  • Course Overview
  • Software Installation
  • Generating Spring Boot Starter Project
  • Walkthrough of Spring Boot Starter Project Files and Folders
  • Introduction to Spring Framework and Spring Boot
  • RESTful Webservices Http Methods Status Code Spring Boot Annotation

MVC Design Pattern Part-1

  • MVC Design Pattern Part-2
  • Understanding and Creating DTO
  • Understanding RESTful Webservice with Practical Example
  • Understanding RequestParam Annotation with Practical Code Example
  • Understanding PathVariable Annotation with Practical Code Example
  • Understanding Post Put Delete Annotation and ResponseEntity with Practical Code

Layered Architecture, ORM Framework and Creating New Property API

  • Save New Property Post Endpoint
  • Creating Service layer Dependency Injection Autowired Singleton Prototype
  • Understanding Layered Architecture and Need for Different Database in DTAP
  • Overview of Hibernate ORM Framework and JPA Specification
  • Understanding how ORM Framework Like Hibernate Work and Different Hibernate
  • Working on Entity class and Understanding Different JPA Annotation
  • Saving Property in DB with PropertyRepository
  • MVC Pattern
  • Added PropertyConverter for DTO to Entity
  • Sending Back the New Entity Along with Status Using ResponseEntity

GET, PUT, PATCH, DELETE Operation on Properties

  • Get All Properties
  • PutMapping and Full Update of a Property
  • Partial Update of Price or Description Using Patch Operation
  • Delete Property by Property id and Delete Mapping

Spring Profiles and Configuration Properties

  • Understanding about Spring Profiles
  • Implementing Spring Profile with Different DB Config for DTAP
  • Testing Profile Configuration for Different Environment Database
  • Reading Custom Config Properties Inside Java Class

Git and GitHub

  • Setting up Git and GitHub for our Local Project
  • Committing and Pushing our Local Code Changes to GitHub Server
  • Connecting IntelliJ Editor with GitHub
  • Important Git Operations that Developer Must Know

User Login and Registration, and Sonar Analysis

  • Understanding User Login and Registration
  • Creating UserEntity and UserRepository
  • Creating UserService Interface and DTO
  • Working on UserService Impl
  • Working on User Converter Layer
  • Completing the User Registration Flow
  • Test User Registration Functionality
  • JSONIgnore and JsonInclude Annotation
  • Sonar Analysis and Git commit
  • FindBy and JPQL Queries
  • Creating Login REST API Endpoint and Integrate with Service Layer
  • Testing User Login Functionality

AOP and Error Handling

  • What is Aspect Oriented Programming (AOP)
  • Creating the Error Model
  • Creating Custom Exception Class
  • Creating Custom AOP Exception Handler
  • Throw Custom Exception for Invalid Login
  • Testing the Invalid Login Attempt
  • Avoid Duplicate User Registration with Same Email
  • Testing Duplicate Registration and Committing Code to GitHub
  • Adding Field Level Validation Annotation
  • Custom Handler for Field Level Error Handler
  • Enabling Field level Validation with @Valid annotation

Logging with Logback and Pull Request Process

  • Overview of Logging and Logging Levels
  • Adding Logback xml Configuration and Logger Statements
  • Testing Logging with Different Profiles and Committing Code to GitHub
  • Raising Pull Request for Code Review

Swagger Automatic API Documentation

  • Understanding About Swagger API Documentation
  • Configuring Swagger Documentation
  • Exploring Swagger JSON from Consumers Point of View
  • Exploring Swagger UI and Accessing Different API Endpoints
  • Enriching Swagger Documentation with Extra Annotation
  • Produces and Consumes Application JSON

Application Health Monitoring

  • Monitoring with Spring Boot Actuator
  • Enabling Web and Jmx Endpoints for Monitoring

Different Types of Entity Relationship

  • Understanding Relationship in SpringData JPA
  • Adding Many To One Relationship in Property
  • Get the User from DB and Set to the Property Entity
  • Save Multiple Property Belonging to One User
  • Updating Controller Service Repository
  • Testing the Get All Properties for One User
  • FetchType Eager Versus FetchType Lazy
  • One to One Relationship
  • Creating Repository and Updating Logic in DTO and Service for Saving Address
  • Testing One to One Relationship

Upgrading SpringBoot Version 2 to Version 3

  • Why should we upgrade to SpringBoot 3
  • Upgrading Java 8 to Java 17
  • Upgrade pom to Springboot 3 and replace the javax imports
  • Upgrade Swagger 2 to Springdoc-openapi
  • Fixing logback and SLF4J with Springboot 3
  • Springboot 3 and MySQL database config fixes
  • Upgrade Actuator

Real World SpringData JPA Queries

  • findBy Query
  • findBy Contains Order By Query
  • findAllBy Query by via more than one entity
  • findBy Query with multiple attributes and operator
  • Pagination with SpringData JPA - CRUD vs JPA Repository
  • countBy Query - existsBy Query - deleteBy Query

Reviews

Be the first to write a review for this product.

Write a review

Note: HTML is not translated!
Bad           Good

Tags: Java SpringBoot and JPA Practice Exam, Java SpringBoot and JPA Online Course, Java SpringBoot and JPA Training, Java SpringBoot and JPA Tutorial, Learn Java SpringBoot and JPA, Java SpringBoot and JPA Study Guide,