Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/javiorfo/java-spring3-microservice
Hexagonal architecture, Java 21, Spring Boot 3, Postgres, Tracing, Logging and Keycloak
https://github.com/javiorfo/java-spring3-microservice
auditory gradle hexagonal-architecture hibernate-jpa java java-21 keycloak microservice spring-boot spring-security springboot3
Last synced: 23 days ago
JSON representation
Hexagonal architecture, Java 21, Spring Boot 3, Postgres, Tracing, Logging and Keycloak
- Host: GitHub
- URL: https://github.com/javiorfo/java-spring3-microservice
- Owner: javiorfo
- License: mit
- Created: 2023-06-16T14:04:57.000Z (over 1 year ago)
- Default Branch: master
- Last Pushed: 2024-07-04T19:59:53.000Z (6 months ago)
- Last Synced: 2024-07-13T09:13:22.382Z (5 months ago)
- Topics: auditory, gradle, hexagonal-architecture, hibernate-jpa, java, java-21, keycloak, microservice, spring-boot, spring-security, springboot3
- Language: Java
- Homepage:
- Size: 284 KB
- Stars: 7
- Watchers: 1
- Forks: 3
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# java-spring3-microservice
*Java archetype oriented to Microservices.*Clean architecture, Java 21, Spring Boot 3, distributed tracing, log centralization and Keycloak.
## Dependencies
Java 21, Docker, Maven## Features
- Clean Architecture
- Exception Controller
- Custom Messages and Exceptions
- Pagination and Ordering
- Java 21
- OpenJDK or GraalVM integration
- Spring Boot 3
- Spring Web
- Spring Data JPA
- Spring OAuth2 Resource Server
- Spring Security
- Spring Devtools
- Spring Actuator
- Keycloak as Auth Server
- Distributed tracing
- OpenTelemetry, Micrometer and Jaeger
- Log Centralization
- Logstash, ElasticSearch and Kibana
- Swagger
- OpenApi
- Auditory
- JPA auditing
- Database
- Postgres for the app
- H2 for Test
- Schema generation (schema.sql)## Files
- [Docker files](https://github.com/javiorfo/java-spring3-microservice/tree/master/docker)
- [Kubernetes files](https://github.com/javiorfo/java-spring3-microservice/tree/master/k8s)
- [Ship files](https://github.com/javiorfo/java-spring3-microservice/tree/master/ships)
- For those using Neovim and [this plugin](https://github.com/javiorfo/nvim-ship)## Usage
- Create the containers executing `./containers.sh`
- Download and compile [this library](https://github.com/javiorfo/java-spring3-microservice-lib)
- Start the application with the command `mvn spring-boot:run -Pdev`
- To delete all the containers: `./containers.sh d`## MongoDB instead of Postgres
- [MongoDB repo](https://github.com/javiorfo/java-spring3-microservice-mongo) contains version with MongoDB
---### Donate
- **Bitcoin** [(QR)](https://raw.githubusercontent.com/javiorfo/img/master/crypto/bitcoin.png) `1GqdJ63RDPE4eJKujHi166FAyigvHu5R7v`
- [Paypal](https://www.paypal.com/donate/?hosted_button_id=FA7SGLSCT2H8G)