An example project to evaluate an test the following technology stack:
- JPA Modeller for modelling the persistance layer.
- Gradle as the build system, with the Spring Boot Gradle plugin.
- Vaadin for the presentation layer.
- Spring-Boot-Starter for the enterprise backend.
- Apache Camel for Enterprise Integration Patterns.
- Hawtio as modular web console, for discover metrics, camel routes etc.
- Javamelody for time-series based monitoring of metrics (jdbc, sql, memory, http, etc.)
- Jailer an tool for database subsetting, schema and data browsing. Perfect for create consistent DB test data.
- Docker for a new level of application deployment, management and orchestration.
The application is separated in sub-projects for the domain-model, the service layer, the user interface and the application itself.
Only run (will use an H2 in memory database):
gradle bootRun
You can also run this example inside Docker with an Postgres Database:
// assemble for fat jar
gradle assemble
// build images (pull, build)
docker-compose build
// start database and spring-boot project
docker-compose up -d
it will use the [spring-profile = docker-postgres].
and access:
- Vaadin UI - localhost:8080
- Hawtio Web-Console - localhost:8080/hawtio
- Javamelody UI - localhost:8080/monitoring