UseCase: - An Employee Management System is designed to simplify the process of record maintenance of employees in an organisation. It helps in managing the information of employees for HR functions. In general, EMS is a part of a comprehensive Human Resource Management System. Most modern companies use computers to collect this information, making their system more accurate and problem-free. A database is often used to collect the information required.
Employee Management System as a REST Service using Spring Tool Suite 4 as an IDE.
Complex level of a Java Rest Controller Application integrated with well-known library 'mysql-connector-java-8.0.15' to connect to MySQL Database and H2 Database locally.
For all beginners/semi-pro, this is perfect repository to start-off with a java application describing Employee Management System using Rest Controller, MVC Design Pattern and JPA Annotations for validity of incoming REST API calls. I have used MySQL Workbench for managing database. I have added some security features, validations, auto-complete feature for better conduct of this application. I have used Spring Tool Suite 4 as an IDE.
For testing the application, you can use Postman (API Development Environment) to make various calls to the system and start managing the Employees and Managers Details. I have added basic REST API calls for managing the Employee viz. Create, Search, Update and Delete Employee. I have handle all possible exceptions which can occur while making any REST API calls through correct HTTP Status Codes.
I have also generated Swagger documentation for this REST API describing each and every API Operation functionality and also stating HTTP Request and Response type and error message handling part.
NOTE: - If anyone wants to generate Java Client to consume this REST API , go to http://localhost:8080/v2/api-docs. Copy Paste content to Swagger Editor and click on Generate Client Tab at top and select Java from dropdown menu. It will download ZIP file.