Skip to content

ThinhLe30/Spring-Boot-Rest-Api---Blog-Application

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

31 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Spring-Boot-Rest-Api---Blog-Application

Building REST API’s using Spring Boot, Spring Security 6, JWT, Spring Data JPA, Hibernate, MySQL, Docker & Deploy on AWS

High level requirements for Blog App

  • Post Managements - Create, Read, Update, Delete Posts. Provide Paginatio and Sorting Support.
  • Post Managements - Create, Read, Update, Delete Comments for Blog Post.
  • Authentication and Authorization - Register, Login and Security
  • Authentication and Authorization - Create, Read, Update and Delete Category.

Post Management

Build the REST APIs for Post resource

  1. Create Post REST API : "/posts"
  2. Get Single Post REST API : "/posts/{id}"
  3. Get All Posts REST API : "/posts"
  4. Get All Posts REST API with Pagination and Sorting : "/posts?pageNo=&pageSize=&sortField=&orderBy="
  5. Update Post REST API : "/posts/{id}"
  6. Delete Post REST API : "/posts/{id}"

Comments Management for Posts

Build the REST APIs for Comment resource(one to many mapping.)

  1. Create Comment REST API : "/posts/{post_id}/comments"
  2. Get Single Comment REST API : "/posts/{post_id}/comments/{comment_id}"
  3. Get All Comments REST API : "/posts/{post_id}/comments"
  4. Update Comment REST API : "/posts/{post_id}/comments/{comment_id}"
  5. Delete Comment REST API : "/posts/{post_id}/comments/{comment_id}"

Exception handling and validations

  1. Handle the exceptuons and errors and return proper error response to the client
  2. Validate the RESP API request and send the validation error response to the client

Securing REST APIs

  1. Secure REST APIs using DatabaseAuthentication
  2. Build Login/Signin REST API
  3. Build Register/Signup REST API
  4. Use JWT - Json Web Token based Authentication to Secure the REST APIs
  5. Implement Role-based security - ADMIN and USER roles

Category Management

Build the REST APIs for Category resource

  1. Create Category REST API : "/categories"
  2. Get Single Category REST API : "/categories/{id}"
  3. Get All Category REST API : "/categories"
  4. Update Category REST API : "/categories/{id}"
  5. Delete Category REST API : "/categories/{id}"
  6. Get Posts By Category REST API : "/categories/{id}/posts"

Versioning REST APIs and Deploying on AWS Cloud

  1. Versioning REST APIs using different stratergies
  2. Deploy Blog app on AWS Cloud

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages