Sample work · Code & Errors
Spring Boot: REST interface with database, validation and tests
A task API with Spring Boot and Maven: create, read, update and delete, input validation with clear error messages. Tested with JUnit and real HTTP calls, plus a counter-test with broken versions.
Sample work (demo), not a client job. Built as a trial task with invented example data; the check figures below come from the automatic test run and are not polished.
What was built
- Controller, repository and error handling separated, responses with matching status codes
- Inputs are checked, errors are returned as a readable message
- JUnit tests and calls against the running server
- Counter-test: every intentionally broken version is detected by the checks
Download spring-boot-api-quellcode.zip
Spring Boot 3 with Java 21 and Maven; Spring Boot 2, older Java versions and Gradle are not tested. The database is H2 in-memory, PostgreSQL or MySQL did not run. Without login (Spring Security, JWT), without microservices and without Docker. Source code with test proof is delivered, work is not performed on the customer's server.
How it was checked
Automatic test run on 2026-11-01, taken from the log (test data invented, figures measured):
- mvn test 5 JUnit tests, 0 red
- HTTP 21/21 green
- Counter-test 3/3 broken versions detected by JUnit AND HTTP check
Limits
What this sample does not cover, so nobody expects more:
- Spring Boot 3.3 / Java 21 / Maven 3.9: other major versions (Spring Boot 2.x with javax, Java 8/11, Gradle) not tested
- Database only H2 in-memory; PostgreSQL/MySQL/Oracle not run (customer code with different DB is not tested against them)
- no authentication (Spring Security, JWT, OAuth), no microservices/messaging, no Docker/Kubernetes
- Maven dependencies come from Maven Central (network required on first run); customer projects with private repository need access
- no work on the customer's server without access; deliverable is source code + test proof
Something like this for your business?
Describe briefly what you need. You get a fixed price before I start; nothing happens without your yes.