DEV Community

Cover image for Spring Boot + MongoDB + Angular 11: CRUD example
bezkoder
bezkoder

Posted on • Updated on • Originally published at bezkoder.com

Spring Boot + MongoDB + Angular 11: CRUD example

In this tutorial, we will learn how to build a full stack Angular 11 + Spring Boot + MongoDB example with a CRUD App. The back-end server uses Spring Boot with Spring Web MVC for REST Controller and Spring Data MongoDB for interacting with MongoDB database.
Front-end side is made with Angular 11, HTTPClient & Router.

Original Post: https://bezkoder.com/angular-11-spring-boot-mongodb/

Angular 11 + Spring Boot + MongoDB CRUD example

We will build a full-stack Tutorial Application in that:

  • Each Tutorial has id, title, description, published status.
  • We can create, retrieve, update, delete Tutorials.
  • We can also find Tutorials by title.
  • The images below shows screenshots of our System.

– Add a Tutorial:

angular-11-spring-boot-mongodb-example-crud-create-tutorial

– Retrieve all Tutorials:

angular-11-spring-boot-mongodb-example-crud-retrieve-all-tutorial

– Click on Edit button to update a Tutorial:

angular-11-spring-boot-postgresql-example-crud-retrieve-one-tutorial

On this Page, you can:

  • change status to Published using Publish button
  • delete the Tutorial using Delete button
  • update the Tutorial details with Update button

angular-11-spring-boot-postgresql-example-crud-update-tutorial

– Search Tutorials by title:

angular-11-spring-boot-mongodb-example-crud-search-tutorial

– This is tutorials collection on the MongoDB database:

angular-11-spring-boot-mongodb-example-crud-database-collection

Angular 11 & Spring Boot MongoDB Architecture

This is the application architecture we will build:

angular-11-spring-boot-mongodb-example-crud-architecture

– Spring Boot exports REST Apis using Spring Web MVC & interacts with MongoDB Database using Spring Data MongoDB.
– Angular 11 Client sends HTTP Requests and retrieve HTTP Responses using axios, shows data on the components. We also use Angular Router for navigating to pages.

Spring Boot Server

These are APIs that Spring Boot App will export:

  • POST /api/tutorials: create new Tutorial
  • GET /api/tutorials: retrieve all Tutorials
  • GET /api/tutorials/[id]: retrieve a Tutorial by :id
  • PUT /api/tutorials/[id]: update a Tutorial by :id
  • DELETE /api/tutorials/[id]: delete a Tutorial by :id
  • DELETE /api/tutorials: delete all Tutorials
  • GET /api/tutorials?title=[keyword]: find all Tutorials which title contains keyword

Angular 11 Client

angular-11-spring-boot-mongodb-example-crud-client-overview

For more details, implementation and Github, please visit:
https://bezkoder.com/angular-11-spring-boot-mongodb/

Other databases:

More Practice:
Angular + Spring Boot: JWT Authentication & Authorization example

Serverless with Firebase:
Angular 11 Firebase CRUD Realtime DB | AngularFireDatabase
Angular 11 Firestore CRUD example | AngularFireStore

Top comments (0)