Build Production Ready REST API in Spring Boot - Expense App

Learn building production ready REST APIs in Spring Boot 3, JPA, Spring Security 6, JWT, MySQL and Deploy to AWS, Docker

Build Production Ready REST API in Spring Boot - Expense App
Build Production Ready REST API in Spring Boot - Expense App

Build Production Ready REST API in Spring Boot - Expense App free download

Learn building production ready REST APIs in Spring Boot 3, JPA, Spring Security 6, JWT, MySQL and Deploy to AWS, Docker

Disclaimer: This course requires you to download the Docker desktop from Docker. If you are a Udemy Business user, please check with your employer before downloading the software.


Welcome to the World's Best Online Course for learn and building Production Ready REST API for Expense Manager API. There is a lot packed into this course, Let's see what's included in this course -


NOTE: I will be updating the course when there is any changes made in the newer versions of Spring Boot.


NEW UPDATES [16/08/2024]: Added New Videos on

- Integrate Java Mapstruct Mapping Library

- Creating different mappers for copying the values from one object to another

- Reduce the boiler plate code


NEW UPDATES [27/06/2024]: Added New Videos on

- Integrating the category module with Expense module

- Refactor the expense API endpoints to accept the category

- Refactor the expense filter APIs to show the category in the response


NEW UPDATES [25/06/2024]: Added New Videos on

- Added the new category module

- Changing the existing system design

- New API endpoints for managing the category module [Create, Read, Delete]

- Best practices and tips while coding


NEW UPDATES [29/04/2024]: Added New Videos on

- Upgrading to Spring Boot v3.2.5


NEW UPDATES [31/01/2023]: Added New Videos on

- Upgrading to Spring Boot v3.0.2

- Spring Security without using WebSecurityConfigurerAdpater


NEW UPDATES [25/07/2022]: Added New Videos on

- Create REST APIs with Spring Boot and MongoDB

- Create Simple Todo REST API with all the CRUD operations using MongoRepository

- Create finder methods using MongoRepository

- Connect Spring Boot Application to MongoDB Atlas (Production database)

- Deploy the Application to Heroku


NEW UPDATES [20/05/2022]: Added New Videos on

- Dockerize the Java Program

- Dockerize the Spring Boot Application

- Dockerize the Spring Boot Application with MySQL Database


What is Spring Boot?

Spring is one of the most popular framework for building Enterprise applications

Spring Boot is a tool to create Spring based applications quickly and easily with zero configuration.


What is Spring Data JPA?

Spring Data JPA is Java Persistence API for Object Mapping, Hibernate is the default implementation for JPA.


What is Spring Security?

Spring Security is separate project, created by spring team. We can use Spring Security to secure the application.


What is JWT?

JWT is a JSON Web Token, which is used to Secure the REST APIs using token based mechanism


We will start from absolute scratch -

  • Understanding the REST APIs/RESTful Web Service

  • Understanding the basics of Spring Boot such as, Spring Boot Starters, SpringBootApplication annotation, Spring Boot project structure

  • You will learn the different ways of creating Spring Boot project

  • You will learn to create the REST end points

  • You will connect Spring Boot application to MySQL database

  • You will learn to perform the database operations using Data JPA

  • You will learn validating the REST APIs

  • You will learn handling the exceptions, custom exceptions, global exceptions and many more

  • You will learn adding Pagination and Sorting to REST APIs

  • You will learn creating REST end points for Users

  • You will add Spring Security to the application

  • You will understand the Spring Security default configuration

  • You will learn configuring multiple users using In-memory authentication

  • You will learn creating custom user details and validate user against MySQL database

  • You will learn the Basic Authentication

  • You will create REST end point for Login

  • You will learn reading the records only for the logged in user

  • You will learn Mapping two entities using OneToMany annotation

  • You will learn using Lombok annotations

  • You will learn adding JWT to the application

  • You will JWT token based authentication

  • You will learn the advance features of Postman REST client

  • You will learn setup the automation script inside the Postman to test APIs

  • You will learn basic Git commands to push the code to Github repository

  • You will learn deploying the application to the Production server (Heroku)

  • You will learn dockerize the Spring Boot Application with MySQL database