https://achtelik.github.io/java-spring-template
This project combines my personal best practices. I will handle different usecases like:
- Project structure
- Environment variables
- Exception handling
- DB integration and migration with MongoDB
- OAuth2 authentication
- ...
Feel free to use this template and to give feedback.
- Root: http://localhost:8080/backend
- Swagger: http://localhost:8080/backend/swagger-ui.html
- GraphQL: http://localhost:8080/backend/graphql
- GraphiQL: http://localhost:8080/backend/graphiql
- Actuator: http://localhost:8080/backend/actuator
The project contains two main packages:
- commons: Contains business use case independent code. You can reuse it in every project.
- modules: Contains the business use case specific code. Delete it, you have your own business code.
If you want to use this template. Clone or copy it and just remove the modules/* folders. You only need the commons for your use cases.
-
Start docker containers.
docker-compose up
-
Build and run the application.
./mvnw spring-boot:run
This projects has multiple branches. Each branch contains a different topic.
- master: contains all topics.
- init: is the base branch to start new topics.
- mongodb: contains the MongoDB integration.
You can use the editor on GitHub to maintain and preview the content for your website in Markdown files.
Whenever you commit to this repository, GitHub Pages will run Jekyll to rebuild the pages in your site, from the content in your Markdown files.
Markdown is a lightweight and easy-to-use syntax for styling your writing. It includes conventions for
Syntax highlighted code block
# Header 1
## Header 2
### Header 3
- Bulleted
- List
1. Numbered
2. List
**Bold** and _Italic_ and `Code` text
[Link](url) and ![Image](src)
For more details see Basic writing and formatting syntax .
Your Pages site will use the layout and styles from the Jekyll theme you have selected in
your repository settings. The name of this theme is
saved in the Jekyll _config.yml
configuration file.
Having trouble with Pages? Check out our documentation or contact support and we’ll help you sort it out.