arch blueprint java¶
A Java project as template and pedagogical support for the teaching of Clean Architecture crafting practice.
Features¶
CRUD operations on Customer entities exposed by a REST API.
- Web request validation with Swagger request validator
- Web security based on Basic Authentication
- Exception handling with Zalando problem handling
- Application management with Spring Actuator
- Acceptance testing with Cucumber
- Contract testing with Pact and Spring Cloud Contract
- Architecture testing with ArchUnit
Getting started¶
- Build the project with
./gradlew clean build
. - Start the database with
docker-compose up
. - Launch the application with
./gradlew bootRun --args='--spring.profiles.active=test,jpa,postgres'
. - Play use cases with Postman using this default collection or with Swagger UI.
This documentation¶
- Powered by MkDocs
- API documentation powered by Swagger UI
- Architecture documentation powered by Structurizr and AppMap