This project demonstrates how to design and build RESTful APIs with the Spring Framework.
It connects to a MySQL database, retrieves and manipulates data, converts it into JSON, and exposes it through REST endpoints that can be consumed by web applications or other clients.
The application showcases key backend development skills, including:
- π Building REST APIs with Spring Boot
- ποΈ CRUD operations (Create, Read, Update, Delete)
- π’οΈ Database integration with MySQL using Spring Data JPA
- π Object Relational Mapping (ORM)
- π¦ Data serialization with Jackson (JSON)
β οΈ Exception handling & validation- ποΈ Layered architecture (Controller β Service β Repository)
- π οΈ API testing with Postman
- β Java 21
- π± Spring Boot 3 / Spring Framework 6
- π’οΈ MySQL
- π Spring Web β RESTful API development
- ποΈ Spring Data JPA β ORM and database queries
- π MySQL Connector/J β JDBC driver for MySQL
- π¦ Jackson β JSON serialization/deserialization
- π§ͺ Spring Boot Starter Test β unit & integration testing
- π§βπ» VS Code β IDE for coding
- π οΈ Postman β testing and documenting REST endpoints
- π Git & GitHub β version control & collaboration
The API provides a simple Employee Directory service where REST clients can:
- π Get a list of employees
- π Get a single employee by ID
- β Add a new employee
- βοΈ Update an existing employee
- β Delete an employee
| HTTP Method | URL | CRUD Action | Description |
|---|---|---|---|
| POST | /api/employees |
Create | β Add a new employee |
| GET | /api/employees |
Read | π Fetch all employees |
| GET | /api/employees/{employeeID} |
Read | π Fetch employee by ID |
| PUT | /api/employees/{employeeID} |
Update | βοΈ Update employee details |
| DELETE | /api/employees/{employeeID} |
Delete | β Remove employee |