1、 摘 要 随着计算机技术的飞速发展 ,以计算机通信技术为基础的信息系统正处于快速发展的时期。同时 ,各种软件也渐渐进入不同规模的各种企业单位中。加之以指纹打卡为代表的签到设备在企业考勤工作的广泛应用,开发出以计算机技术为基础的考勤管理系统将具有很好的应用前景。企业考勤管理系统从企业考勤管理的角度出发,用集中的数据库将所有与考勤相关的信息数据统一管理起来,形成集中的信息源。从而大大提高人事管理者的工作质量和工作效率。考虑到这些优点 ,特制作此“人事考勤管理系统”方便公司人事考勤管理工作。 关键字 计算机技 术 ,信息系统 ,数据库 ,考勤管理系统 abstarct II ABSTARCT Wit
2、h the rapid development of computer technology, computer communication technology-based information system is in a period of rapid development. Meanwhile, a variety of software is also gradually into different sizes in a variety of business units. Combined with fingerprint attendance punch as the re
3、presentative of attendance working in the enterprise device widely used to develop computer technology-based attendance management system will have a good prospect. Enterprise Attendance Management System Attendance Management from the enterprise point of view, with a centralized database with the a
4、ttendance of all information related to unified management of data together to form a centralized source of information. Thus greatly improving the personnel managers job quality and work efficiency. Considering these advantages, making this special “personnel attendance management system“ to facili
5、tate company personnel time and attendance management. Key words Computer Technology, Information System, Database,Attendance Management System 目录 目 录 摘 要 . 1 ABSTARCT . II 1 绪 论 . 1 1.1 问题的提出 . 1 1.2 当前现状 . 1 1.3 系统设计目标 . 2 2 系统开发工具及技术背景 . 3 2.1 JSP 表现层技术简介 . 3 2.2 MVC 框架简介 . 3 2.3 Spring 框架和 Hiber
6、nate 框架简介 . 4 2.4 SQL 语言简介 . 4 2.5 MySQL 数据库简介 . 5 2.6 Tomcat 应用服务器简介 . 5 3 系统分析 . 6 3.1 可行性分析 . 6 3.1.1 技术可行性 . 6 3.1.2 经济可行性 . 6 3.1.3 运行可行性 . 7 3.2 需求分析 . 7 3.2.1 系统需求 . 7 3.2.2 功能需求 . 7 4 概要设计 . 9 4.1 系统目标设计 . 9 4.2 系统运行环境 . 9 4.2.1 硬件环境 . 9 4.2.2 软件环境 . 9 4.3 系统流程设计 . 10 4.4 系统功能设计 . 12 5 数据库设计
7、 . 13 5.1 数据模型 . 13 5.2 数据库表结构设计 . 17 5.3 创建数据库表脚本 . 20 6 系统详细设计 . 22 6.1 界面设计 . 22 6.2 系统实现 . 24 6.2.1 系统通信流程 . 24 6.2.2 登陆功能代码实现 . 25 6.2.3 员工部分核心代码 . 26 6.2.4 人事管理员部分核心代码 . 28 7 系统测试 . 31 目录 7.1 概述 . 31 7.2 测试内容 . 31 结 论 . 32 参 考 文 献 . 33 致 谢 . 34 1 绪论 1 1 绪 论 1.1 问题的提出 随着 电脑 的普及和计算机科学技术的 快 速发展,
8、计算机开始被 人们越来越多地 用在实际问题的解决中 。 在竞争日益强烈的现代社会,企业在不断提高自身产品质量的同时 ,对员工的要求也逐 渐提高。人事考勤管理也就成为了一个大众化的课题。在计算机技术还没有大面积普及之前 ,在没有计算机考勤管理系统的情况下 ,企业的考勤工作完全由人工完成。考勤错误,人情考勤等情况不可避免的发生,这在给管理人员带来不必要的麻烦的同时也对企业利益造成了极大地损害。这类情况的发生给管理人员和员工带来了越来越大的压力。员工会因为考勤人员的失误而产生不快,久而久之会对考勤人员甚至公司产生厌恶感。使得公司工作效率低下甚至人才流失。同时以人工方式管理员工的考勤信息,不仅 浪费大
9、量的时间、人力 、 物力 、财力,而且 数据的准确性 比较 低 ,保 密性相当差,同时将产生大量的文件和数据,这对于数据的查找、更新、管理以及维护都带来了非常大的困难。 随着科学技术水平的不断提高以及 计算机 科学技术的不断发展,人们对计算机的强大功能产生了深刻的认识,计算机技术已经深深的融入了人类社会生活的各个领域并且发挥着越来越重要的作用。 使用计算机对企业考勤信息进行管理,具有着人工管理所不具有的优点,它检索迅速、查找方便、可靠性高、存储量大、保密性好、寿命长、成本低 等,可以减少更多的人力物力财力的浪费,为公司节约大量成本开支 。这些都能够使企业的考勤管理效率得到极大地提高,也是企业考
10、勤管理科学化、正规化,与世界接轨的重要条件 .因此,开发一个企业考勤管理系统是很有必要的,具有其特有的技术意义和管理意义。 1.2 当前现状 随着计算机应用于企业管理在我国逐渐开展起来。在我国的各行各业中,计算机辅助管理目前得到了广泛地应用,但总的来说,计算机在我国企业管理中的应用,还处于初级阶段。尽管近几年发展较快,但还需要不断地探索和研究。尤其是计算机辅助考勤管理,在最近几年才在我国得 到普及和发展,而在许多发达国家计算机辅助考勤管理已十分普及。随着我国经济建设的蓬勃发展,各个行业都在积极使用现代化的手段,不断改善服务质量,提高工作效率。随着我国市场经济的不断成熟,企业的竞争也在不断的加剧
11、,同时企业组织管理观念的变革以1 绪论 2 及业务流程标准化也在不断完善,中小企业信息化建设的热情近几年来有了显著的提高。近几年来,指纹签到设备慢慢普及开来。但这类设备只能处理签到的工作,无法对人员的考勤状况进行管理。因此开发一个高质量的考勤管理系统配合指纹签到设备对公司人员进行考勤管理对企业管理具有重要意义。 1.3 系统设计目标 考勤 管理系统面向 的 对象 具有不同 的身份, 系统 的界面设计风格和功能提供方式由于不同的需求 变得有所不同 。 详尽且全面 的需求分析 是 良好的设计 基础 ,有了好的需求分析 才能得到 清晰明了 的设计目标,从而选择正确的技术 实现 , 才能开发出 比较完
12、善的系统。 本系统主要功能是管理员工通过签到设备生成的数据,对员工考勤信息进行处理计算工作,从而大大提高人事管理者的工作质量和工作效率。 通过对企业实地观察分析,本管理系统的主要使用者大致有三类:普通员工、人事管理员和系统管理员。普通员工可以使用本系统查询到最近几天的考勤情况 、查询个人基本信息、在线请假以及请假记录查询。作为考勤管理员的主要功能是对员工假期状况管理、员工工资管理、员工考勤管理。系统管理员的功能是员工资料管理、部门管理。 2 系统开发工具及技术背景 3 2 系统开发工具及技术背景 本系统主要涉及三个开源架构: Struts 2、 Spring 和 Hibernate,同时还使用
13、了 JSP 作为表现层技术, MySQL 数据库作为数据支撑。以 tomcat 作为应用服务器,以 myEclipse 为开发环境。 2.1 JSP 表现层技术简介 本系统使用 JSP 作为表现层,负责收集用户请求数据,以及业务数据的展现。 JSP 是最传统也是最有效的表现层技术。 JSP 是由 SunMicrosystems 公司倡导、许多公司参与一起建立的一种动态技术标准。在传统的网页 HTML 文件中加入 Java程序片段和 JSP标签,就构成了 JSP网页 java程序片段可以操纵数据库、重新定向网页以及发送 E-mail 等,实现建立动态网站所需要的功能。所有程序操作都在服务器端执行
14、,网络上传送给客户端的仅是得到的结果,这样大大 降低了对客户浏览器的要求,即使客户浏览器端不支持 Java,也可以访问 JSP 网页。 JSP 全名为 java server page,其根本是一个简化的 Servlet 设计,他实现了 Html 语法中的 java 扩张。 JSP 与 Servlet 一样,是在服务器端执行的,通常返回给客户端的就是一个 HTML 文本,因此客户端只要有浏览器就能浏览。 Web服务器在遇到访问 JSP 网页的请求时,首先执行其中的 程序段,然后将执行结果连同 JSP 文件中的 HTML 代码一起返回给客户端。插入的 Java 程序段可以操作数据库、重新定向网页
15、等,以实现建立动态网页所需要的功能。 JSP 技术使用 Java 编程语言编写类 XML 的 tags 和 scriptlets,来封装产生动态网页的处理逻辑。网页还能通过 tags 和 scriptlets 访问存在于服务端的资源的应用逻辑。 JSP 将网页逻辑与网页设计的显示分离,支持可重用的基于组件的设计,使基于 Web的应用程序的开发变得迅速和容易。 JSP(JavaServer Pages)是一种动态页面技术, 它的主要目的是将表示逻辑从 Servlet 中分离出来。 JSP 页面由 HTML 代码和嵌入其中的 Java 代码所组成。服务器在页面被客户端请求以后对这些 Java 代码
16、进行处理,然后将生成的 HTML 页面返回给客户端的浏览器。 2.2 MVC 框架简介 本系统使用 Struts2.2 作为 MVC 框架。 MVC 全名是 Model View Controller,即 模型 (model)视图 (view) 控制器 (controller)的缩写,一种软件设计典范,用于组织代码用一种业务逻辑和数据显示分离的方法,这个方法的假设前提是如2 系统开发工具及技术背景 4 果业务逻辑被聚集到一个部件里面,而且界面和用户围绕数据的交互能被改进和个性化定制而不需要重新编写业务逻辑 MVC 被独特的发展起来用于映射传统的输入、处理和输出功能在一个逻辑的图形化用户界面的结
17、构中。 Struts2.2 以Struts1.x 和 WebWork 为基础,迅速成长为 MVC 框架中的新王者,一经推出,立即赢得了广泛的支持。所有的用户请求,都不再直接发送到表现层 JSP 页面,而是必须发送给 Struts2.2 的 Action, Struts2.2 控制所有请求的处理和转发。 通过 Struts2.2 拦截所有请求有个好处:将所有 JSP 页面放入 WEB-INF/路径下,可以避免用户直接访问 JSP 页面,从而提高系统的安全性。 2.3 Spring 框架和 Hibernate 框架简介 Spring 框架是系统的核心部分, spring 提供的 IoC 容器是业务
18、逻辑组件和DAO 组件的工厂,它负责生成并管理这些实例。 借助 Spring 的依赖注入,各组件以低耦合的方式组合在一起,组件与组件间的依赖正是通过 Spring 的依赖注入 管理。其 Service 组件和 DAO 对象都采用面向接口的编程方式,从而降低了系统的重构成本,极好的提高了系统的可维护性和可修改性。 Hibernate 作为 O/R Mapping 框架使用,其 O/R Mapping 功能简化了数据库的访问,并在 JDBC 层上提供了更好的封装。以面向对象的方式操作数据库,更加符合面向对象程序设计思路。 Hibernate 以灵活的方法操作数据库,无需开发者编写繁琐的 SQL 语
19、句,执行冗长的多表查询,而是通过对象与对象的关联来操作数据库。为底层的 DAO对象的实现提供支持。 2.4 SQL 语 言简介 SQL 语言是结构化查询语言 (Structured Query Language)的缩写 ,SQL 是关系数据库的标准语言。 SQL 语言包含数据模式定义语言 DDL、数据操纵语言 DML、嵌入式 SQL 语言、权限管理等几部分。 SQL 具有语言功能的一体化、模式结构的一体化、高度非过程化的语言、面向集合的操作方式、语言简洁、易学易用等特点。 SQL 为许多任务提供了命令,其中包括:查询数据,在表中插入,修改,删除记录,建立,修改,删除数据对象,控制对数据和数据对
20、象的存取,保证数据库一致性和完整性。 2 系统开发工具及技术背景 5 2.5 MySQL 数据库简介 MySQL 是一个开放源码的小型关联 型 数据库 。 目前被广泛地 应用 在中小型网站 建设 中。由于其 体积 小、速度快、成本低,尤其是开放源码这一特点,许多中小型网站为了降低网站总体成本而选择了 MySQL 作为网站 数据库 。 与其他的大型数据库例如 Oracle、 SQL Server 等相比, MySQL 有它 自身 的不足之处,如规模小、功能有限 、 功能和效率都相对比较差等。对于个人使用者和中小型企业来说, MySQL 提供的功能已经绰绰有余,而且由于 MySQL 是开放源码软件
21、,因此可以大大降低总体成本。 2.6 Tomcat 应用服务器简介 Tomcat 是 Apache 软件基金会( Apache Software Foundation)的 Jakarta 项目中的一个核心项目,由 Apache、 Sun 和其他一些公司及个人共同开发而成。由于有了 Sun 的参与和支持,最新的 Servlet 和 JSP 规范总是能在 Tomcat 中得到体现。因为 Tomcat 技术先进、性能稳定,而且免费,因而深受 Java 爱好者的喜爱并得到了部分软件开发商的认可,成为目前比较流行的 Web 应用服务器。 Tomcat 很受广大程序员的喜欢,因为它运行时所需要的系统资源很
22、小,系统扩展性好,支持负载均衡与邮件服务等与开发应用系统常用的功能;而且它还在不断的改进和完善中,在中小型系统和并发 访问要求不高的情况下被大量使用,是程序员开发和调试 JSP 程序的首选。 3 系统分析 6 3 系统分析 3.1 可行性分析 本系统的可行性分析是从技术可行性,经济可行性和运行可行性三个方面进行的。 通过对系统目标的初步分析,提出可行性方案并进行论证 ,从而为后续开发提供支持 。以下是对本系统的可行性分析。 3.1.1 技术可行性 考勤管理系统采用 B/S 结构,该结构具有开发灵活,运行效率高,技术成熟等特点。 开发语言选择 Java, Java 一种设计非常优秀的语言,具有安
23、全,高效的特点。 开发工具选择 MyEclipse 该开 发工具对 Java 具有良好的支持, 提供了一个通用的开发平台和丰富开源插件。 后台数据库采用 MySQL, 由于其 体积 小、速度快、总体拥有成本低,尤其是开放源码这一特点, 它能有效降低开发成本。所以 它能够胜任目标系统数据处理的需求。 综上所述,本系统的设计与开发在技术上的条件都是满足的,因此,它在技术上是可行的。 3.1.2 经济可行性 通过分析设计,可以在一定程度上减少经济开支和工作量 ,假如开发出只具有特殊性适合具体公司的考勤系统的话,每一家公司都需要开发自己的考勤系统,这样在一定程度上提高了开发人员的工作量,同时也在总量上提高了开发成本 ,而如果开发出一款比较适合不同类型环境的通用考勤管理系统的话 ,可以做到一劳永逸的效果。 现在,计算机的 成本 十分低廉,性能却非常 强大且高效。成功开发出考勤管理系统 ,将 给 各个公司 在 考勤管理 方面 带来 新的 质的飞跃 。 主要表现在以下几个方面: 第一, 考勤管理系统 的运行可以 取代 人工劳动 ,节约大量人力成本 ; 第二, 考勤管理系统 的运行可以 在公司的日常运营中能 节省 大量 资源 , 减少资金开支 ; 第三, 考勤管理系统 的运行可以提高公司 员工 的工作效率 和办事效率,节约大量时间 ; 综上所述 ,本 考勤管理 系统在经济上是可行的。