This project demonstrates the integration of JPA and jOOQ within a Spring Boot application.
This project uses Spotless to maintain consistent code formatting. Run the following command to format all files:
./mvnw spotless:apply
./mvnw clean verify
Ensure you have Docker and Maven installed. Then:
- Start the required PostgreSQL database:
docker-compose -f docker/docker-compose.yml up -d
- Run the application with the local profile (uses local database):
./mvnw spring-boot:run -Dspring-boot.run.profiles=local
Testcontainers provides isolated, throwaway instances of the PostgreSQL database for testing. This allows you to run the application without setting up a local database.
There are two ways to run the application with Testcontainers:
You can run TestJpaJooqApplication.java
from your IDE directly.
Alternatively, use Maven:
./mvnw spring-boot:test-run
- Swagger UI - API documentation and testing interface
- Actuator Endpoints - Application monitoring and management