About This Course
"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 databaseLearn REST API Fundamentals - REST API, Resource, Sub-resource, URI, HTTP methods, HTTP status codesLearn REST API Fundamentals - How to Design REST APIsLearn REST API Best PracticesLearn REST API Differences - GET vs POST, POST vs PUT, PUT vs PATCH, REST vs SOAP, and REST vs GraphQLLearn the basics of Spring Boot REST API Development along with annotationsLearn how to build CRUD REST APIs for a Blog AppLearn how to build REST APIs for ONE-TO-MANY relationships in a Blog AppLearn how to build REST APIs for Pagination and sorting for a Blog AppLearn how to build a Search / Filter REST APILearn how to build REST APIs for Login/Sign-in and Signup for a Blog AppLearn how to use LombokLearn how to use DTOsLearn Spring Boot REST API exception handlingLearn Spring Boot REST API validationLearn how to use Spring Security in the Spring Boot Blog AppLearn Spring Security In-memory and Database authentication and authorizationLearn how to secure REST APIs ( role-based security) in a Blog AppLearn how to write query methods using Spring Data JPALearn one-to-many and many-to-many JPA mappingsLearn how to test REST APIs using Postman REST ClientLearn What is JWT and How it WorksLearn how to configure JWT ( JSON Web Token) in Spring SecurityLearn how to secure REST APIs using JWTLearn how to use JWT with the Login APILearn versioning REST APIsLearn Important 4 versioning REST API strategiesLearn REST API documentation with Swagger UITest Spring Boot REST APIs with JWT using Swagger UILearn Customizing Swagger REST Documentation with AnnotationsLearn how to add profiles (to deploy in different environments) Spring Boot project.Learn Transaction Management with Spring Boot and Spring Data JPALearn how to deploy the Spring Boot Blog app on AWS cloud (production)Dockering Spring Boot Application Step-by-StepDockering Spring Boot MySQL CRUD Application Step-by-StepDocker Compose - Dockerizing Spring Boot MySQL CRUD Application Step-by-Step30+ bonus videos for Spring Boot beginnersImportant Spring Boot topics for interviewsTools and Technologies used in this course:Technologies:JavaSpring BootSpring MVCSpring Data JPA ( Hibernate)Spring SecurityJWTTomcatIDE:Intellij IDEADatabase:MySQL databaseTools:Swagger - API documentationPostman - Test REST APIMaven - Build ToolDeployment on Production:AWSBy 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.
What you'll learn:
- 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 Fundamentals - Best Practices
- Learn REST API Differences - GET vs POST, POST vs PUT, PUT vs PATCH, REST vs SOAP, and REST vs GraphQL
- Learn Building Rest API’s for Blog App Using Spring Boot, Spring Security, JWT, Spring Data JPA (Hibernate), MySQL Database.
- Learn How to Build CRUD REST APIs in Spring Boot Project
- Learn How to Build CRUD REST API's for ONE-TO-MANY Relationship - /posts/{postId}/comments/{commentId}
- Learn How to Build REST APIs for Pagination and Sorting in Spring Boot Project
- Learn How to Build REST API's for Search / Filter REST API in Spring Boot Project
- Learn How to Build REST API’s for Login and Signup in Spring Boot Project
- Learn How to Use Lombok Library
- Learn How to Use DTO’s
- Learn Spring Boot REST API Exception Handling
- Learn Spring Boot REST API Validation
- Learn How to Use Spring Security in Spring Boot Project and How to Perform In-Memory and DB Authentication and Authorization
- Learn How to Secure REST APIs ( Role Based Security) in Spring Boot Project
- Learn How to Write Query Methods Using Spring Data JPA
- Learn One-To-Many and Many-To-Many JPA/Hibernate Mappings
- Learn How to Test REST API’s using Postman REST Client
- Learn What is JWT, How it Works and How to configure JWT ( JSON Web Token) in Spring Security
- Learn How to Use JWT with Login API and secure REST APIs using JWT
- Learn Important 4 Versioning REST API Strategies
- Learn REST APIs 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 the Spring Boot Project
- Learn Transaction Management with Spring Boot and Spring Data JPA
- Learn How to Deploy Spring Boot Blog App on AWS Cloud (Production)
- Learn Spring Data JPA Fundamentals
- Dockering Spring Boot Application Step by Step
- Dockering Spring Boot MySQL CRUD Application Step by Step
- Docker Compose - Dockering Spring Boot MySQL CRUD Application Step by Step