Skip to content

panda022/fullstack-backend

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

40 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

full-stack-backend

Refactor my post website project backend using Spring boot framework. This project will create full-stack CRUD ( Create, Read, Update, Delete) backend using Spring boot and React Components. Finally, the project will build Web Services (REST API) using Spring and Mysql on Backend and Test using PostMan and then handle the same REST API on react in frontend using Axios.

As a second-year computer science student, I learned many academic courses like intro to web development(HTML, CSS, javascript), oop(Java), and intro to Database. I would like to combine all I learned to apply them to real-world --- build my own blog website, implements features including the crud of post and comment, the crud od users and roles, authentication and authorization. With the help of spring framwork, I do not need to build everything from scratch as I standing on the shoulders of giants(Great Software Engineers).

The purpose of this project is to learn and practice concepts related to:

  • Building a REST API
  • Spring Core
  • Springboot
  • Spring JPA
  • Spring Security-MVC Architectural Patter-Java

During this development, I learned the following concept:

  • Dependency injection
  • Repository design pattern
  • Mysql
  • Entity
  • Data Transfer Objects (DTOs) & AutoMapper
  • RESTful API guidelines
  • HTTP (GET, POST, PUT, PATCH, DELETE, status codes)
  • Views (React concept)
  • Testing API Endpoints (SwaggerUI & Postman)
  • Amazon (Deployment: EC2, RDS)
  • Docker (Container, Image, Deploying on Docker Hub)

Blog API Spring-boot Flow Architecture:

Blog API Spring-boot Flow Architecture

The Architecture of the automated deployment on the AWS, generation of the analysis report, building the docker image

The Architecture of the automated deployment on the AWS using GitHub, CodePipeline(CICD), RDS and Elastic Beanstalk The generation of the analysis report, building the docker image using maven on the local machine Deployment diagram

API Endpoints (CRUD): See Swagger-ui in the back part

Swagger-ui

pan-gong-blog us-east-1 elasticbeanstalk com_swagger-ui_index html

ER diagram

ER diagram for blog entities

Spring Boot Signup & Login with JWT Authentication Flow

Spring Boot Signup & Login with JWT Authentication Flow

APA: bezkoder. (2019, October 15). Spring Boot Token based Authentication with Spring Security & JWT. BezKoder. https://www.bezkoder.com/spring-boot-jwt-authentication/

Sample endpoints test using Postman:

test-getAllPost

Sonarqube analysis report

Sonarqube analysis report1 Sonarqube analysis report2

Unit test example for postRepository and for postServiceImpl:

test-results-PostRepository

test-results-PostServiceImpl

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published