Leave Management System Project in Java using JSP, Servlet and MYSQL

Leave Management System Project in Java using JSP, Servlet, and MYSQL. Another Minor or Major project in Java Using JSP, Servlet, and MYSQL with source code and project report.

This is a web application developed for the organization to manage their employee leaves on a single platform. In this project, we have three main users i.e the admin, the Manager and the other is the employee.

Admin here manages the whole application and has the authority to approve/reject leaves.

Another user is the manager who can access the leave of the department and approve or reject leaves of the department Next, we have the user as an employee who can add a leave request.

This Project has all the necessary functionality from adding, deleting, approve leaves type from the system. It is developed to support all roles, whether it is admin or employee.

The whole project is designed using the MVC pattern (MVC i.e Model, View, and Controller). The business logic is done on the Model side, We have used JSP to manage the front, and to handle the request and response we have used a Controller i.e Servlet.

Leave Management System in Java

In an organization, there should be an application where employees can take a leave request, and in turn, the admin or the manager can approve/reject it. There should be a system that should be automated, digitized, and modern.

So, for this, we on Codebun have developed a Leave Management System where employees are able to add a leave request and the manager can approve/reject it. Here, we have two main roles. One is the Admin who will add leave type, view leaves, and approve/reject and another user is the employee who will take a leave request.

The following are the major objective of this application:

  1. To provide a bug-free application to the admin or employees.
  2. The main objective is to build a secured, robust Leave Management System Project where all the leaves request is managed properly.
  3. It maintains the record of employees, and leaves detail efficiently so that it would be easy to access at any time 24*7.

Modules and Functionalities of Leave Management System Project

There are two main roles in this application. These are Admin and Employee. Let us see the functionality of each.

1) Admin

  • Admin can ADD/VIEW/UPDATE/DELETE Employee.
  • Admin can ADD/VIEW/UPDATE/DELETE Manager.
  • It can ADD leave Status.
  • Admin can VIEW leave requests from employees.
  • Admin can check the leave status.
  • Admin can approve or reject the employees.
  • Admin can add the holiday calendar.

2) Employee

  • Employees can apply for leave.
  • Employees can VIEW the status of their leave request.
  • It can VIEW the Holyday calendar.
  • Employees can VIEW all the leave reports.

3) Manager

  •  Managers can log in and register for the application.
  • Manager can view the list of requested leaves of the department employee.
  • Managers can also approve or reject the employees’ leave from their departments.

There will be a manager of each department and the manager can see the leave employee that comes from the same department only.

NOTE: The profile section, log-in, and registration features are common to all users in the system.

Tools and Technologies

Technology/Domain: Java
Front-End: JSP, Html, CSS, JS, Bootstrap.
Server-side: Servlet.
Back-end: MYSQL.
Server: Tomcat 8.5.

Contact to get the Source code

Skype Id: jcodebun
Email: jcodebun@gmail.com
WhatsApp: +91 8827363777
Price: 1999 INR

Buy Now

Check other services

Note: If you need the source code you can contact Us. We will provide complete source code and all the required things like Database and project reports with all the diagrams. Also, we have created a STEP-by-STEP configuration tutorial to help you in the configuration process.

If you find any kind of difficulties during the configuration, we will provide a complete project configuration guide remotely using any Desk or Zoom.

Leave Management Project in Java source code

Below, Is the source code of the leave management beans. that defines the modules and attributes of each module in the application.

package in.co.leave.mg.Bean;

import java.sql.Timestamp;

public class BaseBean {
 protected long id;
 protected String createdby;
 protected String modifiedby;
 protected Timestamp createdatetime;
 protected Timestamp modifieddatetime;
 public long getId() {
  return id;
 public void setId(long id) {
  this.id = id;
 public String getCreatedby() {
  return createdby;
 public void setCreatedby(String createdby) {
  this.createdby = createdby;
 public String getModifiedby() {
  return modifiedby;
 public void setModifiedby(String modifiedby) {
  this.modifiedby = modifiedby;
 public Timestamp getCreatedatetime() {
  return createdatetime;
 public void setCreatedatetime(Timestamp createdatetime) {
  this.createdatetime = createdatetime;
 public Timestamp getModifieddatetime() {
  return modifieddatetime;
 public void setModifieddatetime(Timestamp modifieddatetime) {
  this.modifieddatetime = modifieddatetime;



package in.co.leave.mg.Bean;

import java.util.Date;

public class HolidayBean extends BaseBean{
 private String empName;
 private String empEmail;
 private String empContactNo;
 private String leaveType;
 private Date leaveTo;
 private Date leaveFrom;
 private String leavedescription;
 private long userid;
 private String status;
 private String department;
 public String getDepartment() {
  return department;
 public void setDepartment(String department) {
  this.department = department;
 public String getStatus() {
  return status;
 public void setStatus(String status) {
  this.status = status;
 public long getUserid() {
  return userid;
 public void setUserid(long userid) {
  this.userid = userid;
 public String getEmpName() {
  return empName;
 public void setEmpName(String empName) {
  this.empName = empName;
 public String getEmpEmail() {
  return empEmail;
 public void setEmpEmail(String empEmail) {
  this.empEmail = empEmail;
 public String getEmpContactNo() {
  return empContactNo;
 public void setEmpContactNo(String empContactNo) {
  this.empContactNo = empContactNo;
 public String getLeaveType() {
  return leaveType;
 public void setLeaveType(String leaveType) {
  this.leaveType = leaveType;

 public Date getLeaveTo() {
  return leaveTo;
 public void setLeaveTo(Date leaveTo) {
  this.leaveTo = leaveTo;
 public Date getLeaveFrom() {
  return leaveFrom;
 public void setLeaveFrom(Date leaveFrom) {
  this.leaveFrom = leaveFrom;
 public String getLeavedescription() {
  return leavedescription;
 public void setLeavedescription(String leavedescription) {
  this.leavedescription = leavedescription;



package in.co.leave.mg.Bean;

public class UserBean extends BaseBean{
 private String firstName;
 private String lastName;
 private String email;
 private String password;
 private String phoneNo;
 private long roleid;
 private String rolename;
 private String department;
 public String getDepartment() {
  return department;
 public void setDepartment(String department) {
  this.department = department;
 public long getRoleid() {
  return roleid;
 public void setRoleid(long roleid) {
  this.roleid = roleid;
 public String getRolename() {
  return rolename;
 public void setRolename(String rolename) {
  this.rolename = rolename;
 public String getFirstName() {
  return firstName;
 public void setFirstName(String firstName) {
  this.firstName = firstName;
 public String getLastName() {
  return lastName;
 public void setLastName(String lastName) {
  this.lastName = lastName;
 public String getEmail() {
  return email;
 public void setEmail(String email) {
  this.email = email;
 public String getPassword() {
  return password;
 public void setPassword(String password) {
  this.password = password;
 public String getPhoneNo() {
  return phoneNo;
 public void setPhoneNo(String phoneNo) {
  this.phoneNo = phoneNo;
 public String getGender() {
  return gender;
 public void setGender(String gender) {
  this.gender = gender;
 private String gender;


Thanks to visit Codebun, If you need complete source code with configuration then please contact jcodebun@gmail.com