Skip to content

Latest commit

 

History

History
63 lines (31 loc) · 1.8 KB

README.md

File metadata and controls

63 lines (31 loc) · 1.8 KB

DayOff System

It is a little project which dedicated to reduce labor cost for small and medium businesses. It provides a web-based tool to assist every employee manage their leaves.

Development Environment

  • JDK 1.8.0_151
  • Eclipse Oxygen IDE for Java EE Developers
  • Maven 3.3.9
  • Tomcat 9.0.2
  • SQL Server 2017

System Architecture

3-tier architecture

This project is designed with 3-tier architecture: web server, AP server and SQL server.

3-tier architecture

Web Server

In the web server, I use Spring 4 to achieve a MVC structure. To keep the controller layer simply handle request/response, I extract all business logic into the service layer.

Web server

AP Server

In the AP server, all database query logic (hibernate session) are put in the DAO layer. XML configuration contains three parts: datasource, sessionFactory (ORM settings) and DAOs (Dependency Injection: refer datasource and sessionFactory to every DAO by XML setting).

AP server

SQL Server

Each department cotains several users; each user has several leave events.

SQL server

Demo

The website calendar is implemented with a JavaScript library, FullCalendar. All JavaScript's popup boxes are replaced with SweetAlert2.

Login

Login

Insert

Insert

Update

Update

Remove

Remove