This repository contains a robust, scalable RESTful API built with Spring Boot 3 to manage core hospital operations. While the repository is a full-stack project (including a React frontend), the primary focus of this project is the backend architecture.
I designed this backend to demonstrate modern Java development practices, stateless security, and efficient database interactions, providing a strong API foundation for managing patients, doctor profiles, and appointment scheduling.
- Stateless Security (JWT): Designed a custom Spring Security filter chain to handle user authentication and authorization using JSON Web Tokens.
- REST API Design: Follows strict RESTful conventions using Spring Web to expose clean, predictable endpoints (
Controller Layer). - Data Integrity: Utilizes
Spring Validationto sanitize and validate incoming request payloads before they reach theService Layer. - Relational Data Management: Employs
Spring Data JPAand Hibernate to define entity relationships, mapping business logic directly to a robust MySQL database. - Clean Architecture: Strictly separates concerns across Entities, Clean Data Transfer Objects (DTOs), Repositories, Services, and Controllers.
- Framework: Spring Boot (v3.2.5)
- Language: Java 21
- Database Architecture: Spring Data JPA / Hibernate
- Database: MySQL
- Security: Spring Security & JWT (
io.jsonwebtoken) - Utility: Lombok (Boilerplate reduction)
- Build Tool: Maven
- Environment: React 19 / Vite
- Styling: Tailwind CSS
- Java Development Kit (JDK) 21
- Node.js (v18+) [Optional: Only required to run the frontend]
- MySQL Server
1. Clone the repository:
git clone https://github.com/yourusername/YourRepositoryName.git
cd YourRepositoryName