A simple Spring Boot CRUD application for managing authors and books.
Built as a learning project and portfolio demo.
- Java 21, Spring Boot 3
- Spring Web, Data JPA, Validation
- H2 in-memory DB
- Spring Security (Basic Auth)
- Actuator (health/info)
- JUnit 5, Mockito, MockMvc
- Lombok (@Slf4j) – used only for logging
- Authors API: CRUD endpoints
- Books API: CRUD + pagination/sorting
- Validation: DTO constraints (
@NotBlank,@Email,@Min, …) - Actuator:
/actuator/health,/actuator/info - Security: Basic Auth (
admin/secret), health endpoint public - Profiles: dev (H2)
- Logging: Controller and Service layers using Lombok @Slf4j