Questions Management is an application for managing multiple-choice questions divided into many different topics. I wrote this application mainly to guide you all through the steps to build a complete application from development, test, build and deploy.

GitHub Homepage: https://github.com/huongdanjavacom/questions-management

Questions Management application is built on a Reactive Microservices model that uses Spring’s latest technologies for the backend, frontend using Angular and some other JavaScript frameworks.

The overview architecture of Questions Management application is as follows:

Questions Management

The development of Questions Management will consist of several stages as listed below:

Stage 1: Building basic functions including managing the question and categories that the questions belong to.

Stage 2: Building the system to manage, monitor the services.

Stage 3: Build user management.

Stage 4: Deploy the application to production.

Technologies to use:

 Front-end
  • Angular 6
  • Bootstrap 3
 Back-end
  • Spring Framework
 Database
  • MongoDB

Some images of the application

Category management:

Questions Management

All questions management:

Questions Management

Add new question:

Questions Management

Information of a question:

Questions Management

Below are the articles for building the Questions Management application.


Stage 1

This phase is divided into two separate sections, including building services with Microservices and building UI to add, delete, and manage questions.

The architecture of the Questions Management application at this stage is as follows:

Questions Management

Services in the Questions Management application will be grouped into 3 separate sections:

– Core Services is a group of services that will operate directly with the MongoDB database.

– Composite Services are services that will call different Core Services to perform the transform, aggregate data from those Core Services.

– API Services are services that expose the API to external systems that can be used. They will call to other services in Core Services or Composite Services to fulfill their needs.

The front-end of the Questions Management application at this stage will allow the user to manage the category and manage questions with the options of the question.



Part 1: Questions Management – Create questions-management parent project using Spring Tool Suite

Core Category Service

Part 2: Questions Management – Core Category Service – Create core-category-service project using Spring Tool Suite

Part 3: Questions Management – Core Category Service – Build API adding new category using Spring WebFlux and Spring Data MongoDB Reactive

Part 4: Questions Management – Core Category Service – Build API deleting category using Spring WebFlux and Spring Data MongoDB Reactive

Part 5: Questions Management – Core Category Service – Build API updating category using Spring WebFlux and Spring Data MongoDB Reactive

Part 6: Questions Management – Core Category Service – Build API to find category by id using Spring WebFlux and Spring Data MongoDB Reactive

Part 7: Questions Management – Core Category Service – Build API retrieving all categories using Spring WebFlux and Spring Data MongoDB Reactive

Core Question Service

Part 8: Questions Management – Core Question Service – Create core-question-service project using Spring Tool Suite

Part 9: Questions Management – Core Question Service – Build the API for adding a new question using Spring WebFlux and Spring Data MongoDB Reactive

Part 10: Questions Management – Core Question Service – Build the API to get all the questions using Spring WebFlux and Spring Data MongoDB Reactive

Part 11: Questions Management – Core Question Service – Build API find question by id using Spring WebFlux and Spring Data MongoDB Reactive

Part 12: Questions Management – Core Question Service – Build API update question using Spring WebFlux and Spring Data MongoDB Reactive

Part 13: Questions Management – Core Question Service – Build API delete question using Spring WebFlux and Spring Data MongoDB Reactive

Core Option Service

Part 14: Questions Management – Core Option Service – Create core-option-service project using Spring Tool Suite

Part 15: Questions Management – Core Option Service – Build API to create a new option using Spring WebFlux and Spring Data MongoDB Reactive

Part 16: Questions Management – Core Option Service – Build API find options by id of question using Spring WebFlux and Spring Data MongoDB Reactive

Part 17: Questions Management – Core Option Service – Build API delete option using Spring WebFlux and Spring Data MongoDB Reactive

Part 18: Questions Management – Core Option Service – Build API delete options by question id using Spring WebFlux and Spring Data MongoDB Reactive

Part 19:Questions Management – Core Option Service – Build API update option using Spring WebFlux and Spring Data MongoDB Reactive

Composite Question Service

Part 20: Questions Management – Composite Question Service – Create composite-question-service project using Spring Tool Suite

Part 21: Questions Management – Composite Question Service – Build API to get all the questions using Spring WebFlux

Part 22: Questions Management – Composite Question Service – Build API to find question by id using Spring WebFlux

Part 23: Questions Management – Composite Question Service – Build API add new question using Spring WebFlux

Part 24: Questions Management – Composite Question Service – Build API update question using Spring WebFlux

Part 25: Questions Management – Composite Question Service – Build API delete question using Spring WebFlux

Composite Option Service

Part 26: Questions Management – Composite Option Service – Create composite-option-service project using Spring Tool Suite

Part 27: Questions Management – Composite Option Service – Build API add new option using Spring WebFlux

API Category Service

Part 28: Questions Management – API Category Service – Create api-category-service project using Spring Tool Suite

Part 29: Questions Management – API Category Service – Build API adding new category using Spring WebFlux

Part 30: Questions Management – API Category Service – Build API retrieving all categories using Spring WebFlux

Part 31: Questions Management – API Category Service – Build API updating category using Spring WebFlux

Part 32: Questions Management – API Category Service – Build API remove category using Spring WebFlux

API Question Service

Part 33: Questions Management – API Question Service – Create api-question-service project using Spring Tool Suite

Part 34: Questions Management – API Question Service – Build API to get all the questions using Spring WebFlux

Part 35: Questions Management – API Question Service – Build API find question by id using Spring WebFlux

Part 36: Questions Management – API Question Service – Build API add new question using Spring WebFlux

Part 37: Questions Management – API Question Service – Build API update question using Spring WebFlux

Part 38: Questions Management – API Question Service – Build API delete question using Spring WebFlux

API Option Service

Part 39: Questions Management – API Option Service – Create api-option-service project using Spring Tool Suite

Part 40: Questions Management – API Option Service – Build API add new option using Spring WebFlux

Part 41: Questions Management – API Option Service – Build API update option using Spring WebFlux

Part 42: Questions Management – API Option Service – Build API delete option using Spring WebFlux

Front-end

Part 43: Questions Management – Frontend – Create frontend Angular project using Angular CLI

Part 44: Questions Management – Frontend – Using SB Admin 2 Bootstrap Theme

Part 45: Questions Management – Frontend – Split SB Admin 2 template using Module, Component of Angular

Part 46: Questions Management – Frontend – Apply routing using RouterModule of Angular

Part 47: Questions Management – Frontend – Build interface for the Categories using Angular Module, Angular Component

Part 48: Questions Management – Frontend – Display all categories using Angular

Part 49: Questions Management – Frontend – Build adding new category using Angular

Part 50: Questions Management – Frontend – Build updating category using Angular

Part 51: Questions Management – Frontend – Build category deletion using Angular

Part 52: Questions Management – Frontend – Build interface shows all questions using Angular and Bootstrap

Part 53: Questions Management – Frontend – Build the display all questions using Angular

Part 54: Questions Management – Frontend – Build the display content of a question using Angular, Bootstrap

Part 55: Questions Management – Frontend – Build display update question using Angular, Bootstrap

Part 56: Questions Management – Frontend – Build the interface for adding new question using Angular, Bootstrap

Part 57: Questions Management – Frontend – Build adding new question using Angular

Part 58: Questions Management – Frontend – Build question deletion using Angular

Part 59: Questions Management – Frontend – Build the interface for adding new option using Angular, Bootstrap

Part 60: Questions Management – Frontend – Build adding new option using Angular

Part 61: Questions Management – Frontend – Build updating option using Angular

Part 62: Questions Management – Frontend – Build deleting option using Angular

End

Part 63: Questions Management – End Phase 1

Questions Management
Đánh giá bài viết
Chia sẽ bài viết này ...Share on Facebook
Facebook
0Share on Google+
Google+
0Tweet about this on Twitter
Twitter
Share on LinkedIn
Linkedin

Add Comment

This site uses Akismet to reduce spam. Learn how your comment data is processed.