A full-stack Spring Boot based Student Management System with robust features including authentication, authorization, exception handling, role-based access, pagination, and searching. Built following clean architecture and industry best practices.
- ✅ Role-based access control (
ADMIN/USER) using Spring Security - 🔒 Password encryption with BCryptPasswordEncoder
- 🧠 Global exception handling using
@ControllerAdvice - 📢 Clean and informative error responses for client-side integration
- 📋 Field-level validation using Hibernate Validator
⚠️ Automatic handling of bad requests with descriptive messages
- 🔄 Entity relationships using
@OneToMany,@ManyToOne,@ManyToMany - 🔍 Data integrity and join handling with JPA and custom queries
- 🔁 Data transfer handled with DTOs
- 🔄 Seamless model-to-DTO and DTO-to-model conversions via ModelMapper
- 📄 Pageable API endpoints using Spring Data
- 🔎 Dynamic searching and filtering
- ⚡ Optimized queries for performance with large data sets
- 🧱 Layered structure: Controller → Service → Repository
- 💡 Follows SOLID principles
- 💻 Java 21
- ⚙️ Spring Boot
- 🗃️ Spring Data JPA
- 🛡️ Spring Security
- 🐬 MySQL
- 🧪 Hibernate Validator
- 🔄 ModelMapper
- 🧥 Lombok