Stack Name - Spring MongoDB

Synopsis
The is the base reusable implementation for Spring Boot type tech stacks used to create a headless (no UI) application comprised of a set of reusable Restful APIs. The stack includes:- Spring Boot:
- Designed to simplify the bootstrapping and development of a new Spring application.
- MongoDB:
- A general purpose, document-based, distributed database built for modern application developers and for the cloud era
- JUnit:
- Unit testing framework for Java
- Memcached:
- A general-purpose distributed memory-caching system
- Morphia:
- An Object to Document mapping framework to simplify persisting Plain Old Java Objects
Details
Author | dev@harbormaster.ai |
Access | Public |
Derived From | .java.tech.stack .mongodb.tech.stack |
Long Name | Spring MongoDB |
Short Name | SpringMongoDB |
Language(s) | Java 8+, Javascript, YAML, XML, Velocity Macros |
Git Url | https://github.com/Harbormaster-AI/techstacks/tree/main/Spring%20MongoDB |
Example Project YAML | https://github.com/Harbormaster-AI/cli/blob/main/samples/yamls/project.as.code/springboot-mongodb-project-as-code.yml |
Contents
Along with what is supported by the parent tech stack (.java.tech.stack), the following are overridden and additional capabilities:- App:
- The main Application template used to configure, initiate, and run as a Spring application.
- Build/Maven:
- Overrides the default Maven pom.xml file to create a Spring Boot self-contained web application.
- Controller:
- Template used to generate the Restful handlers for all CRUD functions for each entity within the model.
- Config/Properties:
- Contains the templates to generate the Hibernate XML database schema declarations.
Usage
If using a CI/CD platform such as CircleCI, AWS Codebuild, Jenkins, etc.., it is best to refer to the Pipeline YAML file generated for that platform. If not using a CI/CD platform refer to the instructions below on how to use the generated project.To get started manually
In the root directory of the generated project is a generated Maven pom.xml file that contains the declarations and dependencies to run the application within a Jetty container.mvn spring-boot:run