Skip to content

Clean architecture, Java 21, Spring Boot 3, Postgres, Tracing, Logging and Keycloak

License

Notifications You must be signed in to change notification settings

javiorfo/java-spring3-microservice

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

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

Usage

  • Create the containers executing ./containers.sh
  • Download and compile this library
  • Start the application with the command mvn spring-boot:run -Pdev
  • To delete all the containers: ./containers.sh d

MongoDB instead of Postgres


Donate

  • Bitcoin (QR) 1GqdJ63RDPE4eJKujHi166FAyigvHu5R7v