A full-stack Employee Management System built using Spring Boot, Spring Security, Thymeleaf, and MySQL. The application provides a secure platform to manage employee records with authentication, file uploads, email notifications, dashboard analytics, REST APIs, and report generation.
- Add new employees
- Update employee information
- Delete employees
- View employee details
- Employee profile image upload
- Total Employees
- Total Departments
- Average Salary
- New Employees This Month
- Recently Added Employees
- Department Statistics
- Search employees by:
- First Name
- Last Name
- Department
- Pagination support
- Spring Security Authentication
- Password Encryption using BCrypt
- Secure Login System
- Role-based protected endpoints
- Automatic welcome email when a new employee is added
- SMTP integration using Spring Boot Mail
- Employee profile image upload
- Local file storage
- Export employee data to Excel (.xlsx)
- Export employee data to PDF
- Complete RESTful CRUD APIs
- DTO-based architecture
- Validation
- Exception Handling
- Swagger UI integration using SpringDoc OpenAPI
- Java 21
- Spring Boot
- Spring MVC
- Spring Data JPA
- Spring Security
- Hibernate
- Thymeleaf
- HTML5
- CSS3
- Bootstrap 5
- MySQL
- Spring Boot Mail
- Apache POI (Excel Export)
- OpenPDF
- SpringDoc OpenAPI
- Jakarta Validation
- Maven
This project demonstrates:
- Spring Boot Development
- MVC Architecture
- REST API Design
- Spring Security
- Authentication & Authorization
- DTO Pattern
- Exception Handling
- Validation
- File Upload
- Email Integration
- Report Generation
- Swagger Documentation
- MySQL Database Integration