Building Real-Time REST APIs with Spring Boot - Blog App

Build REAL-TIME REST APIs with Java, Spring Boot, Spring Security 6, JWT, Spring Data JPA, Hibernate, MySQL, Docker, AWS

Building Real-Time REST APIs with Spring Boot - Blog App
Building Real-Time REST APIs with Spring Boot - Blog App

Building Real-Time REST APIs with Spring Boot - Blog App udemy course

Build REAL-TIME REST APIs with Java, Spring Boot, Spring Security 6, JWT, Spring Data JPA, Hibernate, MySQL, Docker, AWS

Disclaimer:

"This course requires you to download Docker Desktop from the official Docker website. If you are a Udemy Business user, please check with your employer before downloading software."

In this course, you will learn how to build REAL-TIME REST APIs by developing a complete Blog application and how to deploy it on the AWS cloud.


In this course, we will follow the real-time industry-standard project development approach.

This course covers Spring Boot REST API development from scratch.

This course covers the REST API fundamentals from scratch.


Important: This course supports Spring Boot version 3+ and Spring Security version 6+.


The source code and PDF files (class notes) are available for download.


What is REST API?

REST stands for Representational State Transfer. It’s a set of rules that developers use to build APIs that work over the web, just like the websites you visit in your browser. When an API follows the rules of REST, we call it a REST API.


What is Spring Boot?

Spring Boot is an opinionated framework that helps developers build Spring-based applications quickly and easily.

The main goal of Spring Boot is to quickly create Spring-based applications without requiring developers to write the same boilerplate configuration repeatedly.

Spring Boot is a very popular framework for developing REST web services and microservices.


You will learn the following topics in this course:

  • Learn how to build great REST APIs for a Blog App using Spring Boot, Spring Security, JWT, Spring Data JPA (Hibernate), MySQL database

  • Learn REST API Fundamentals - REST API, Resource, Sub-resource, URI, HTTP methods, HTTP status codes

  • Learn REST API Fundamentals - How to Design REST APIs

  • Learn REST API Best Practices

  • Learn REST API Differences - GET vs POST, POST vs PUT, PUT vs PATCH, REST vs SOAP, and REST vs GraphQL

  • Learn the basics of Spring Boot REST API Development along with annotations

  • Learn how to build CRUD REST APIs for a Blog App

  • Learn how to build REST APIs for ONE-TO-MANY relationships in a Blog App

  • Learn how to build REST APIs for Pagination and sorting for a Blog App

  • Learn how to build a Search / Filter REST API

  • Learn how to build REST APIs for Login/Sign-in and Signup for a Blog App

  • Learn how to use Lombok

  • Learn how to use DTOs

  • Learn Spring Boot REST API exception handling

  • Learn Spring Boot REST API validation

  • Learn how to use Spring Security in the Spring Boot Blog App

  • Learn Spring Security In-memory and Database authentication and authorization

  • Learn how to secure REST APIs ( role-based security) in a Blog App

  • Learn how to write query methods using Spring Data JPA

  • Learn one-to-many and many-to-many JPA mappings

  • Learn how to test REST APIs using Postman REST Client

  • Learn What is JWT and How it Works

  • Learn how to configure JWT ( JSON Web Token) in Spring Security

  • Learn how to secure REST APIs using JWT

  • Learn how to use JWT with the Login API

  • Learn versioning REST APIs

  • Learn Important 4 versioning REST API strategies

  • Learn REST API documentation with Swagger UI

  • Test Spring Boot REST APIs with JWT using Swagger UI

  • Learn Customizing Swagger REST Documentation with Annotations

  • Learn how to add profiles (to deploy in different environments) Spring Boot project.

  • Learn Transaction Management with Spring Boot and Spring Data JPA

  • Learn how to deploy the Spring Boot Blog app on AWS cloud (production)

  • Dockering Spring Boot Application Step-by-Step

  • Dockering Spring Boot MySQL CRUD Application Step-by-Step

  • Docker Compose - Dockerizing Spring Boot MySQL CRUD Application Step-by-Step

  • 30+ bonus videos for Spring Boot beginners

  • Important Spring Boot topics for interviews


Tools and Technologies used in this course:

Technologies:

  1. Java

  2. Spring Boot

  3. Spring MVC

  4. Spring Data JPA ( Hibernate)

  5. Spring Security

  6. JWT

  7. Tomcat

IDE:

  • Intellij IDEA

Database:

  • MySQL database

Tools:

  1. Swagger - API documentation

  2. Postman - Test REST API

  3. Maven - Build Tool

Deployment on Production:

  • AWS

By the end of this course, you will be able to build real-time REST APIs for any application using Spring Boot and deploy them on the AWS cloud.