基于Web的工资管理系统的设计与实现_毕业论文精品资料.doc
本科生毕业论文(设计)基于Web的工资管理系统的设计与实现姓名学号专业指导教师2011年5月25日84摘要随着现代企业管理制度的建立和软件产业的迅速发展,企业人事劳资管理系统已成为企业进行日常管理工作的重要工具,加强人事劳资管理类软件的开发和运作已成为提高企业管理效率的重要手段,而工资管理是企业人事劳资管理的重要组成部分。本文论述了基于Web的工资管理系统的开发和实现过程,主要包括系统开发技术、系统需求分析、系统概要分析与设计、系统详细设计与实现等。重点介绍了数据库的设计及系统的实现过程,此外还介绍了系统框架结构。本系统采用了目前较为流行的SSH组合框架开发技术。在表示层采用Struts技术实现了经典的MVC模式,规范了表示层的开发过程。在业务层中,使用Spring 组件技术,用容器管理表示层的控制器和数据层的数据访问对象,以提高系统的可扩展性能。在数据持久层,使用Hibernate框架技术,实现了数据与业务的分离,降低了系统的耦合度。开发结果表明,将Struts、Spring和Hibernate技术整合为一种组合型多框架,极大的提高了系统的可维护性、可扩展性、可移植性和组件的复用性。关键词:工资管理;SSH框架;MVC模式AbstractWith the establishment of modern enterprise management system and the rapid development of software industry, business personnel labor management system has become the daily management of an important tool to strengthen the personnel labor management class software development and operation of business management to improve efficiency has become an important means of and wages of personnel management is an important part of labor management. This papers discusses the Web-based payroll system in the development and implementation process, including system development technology, system requirements analysis, system profiling and design, detailed design and implementation. Focuses on database design and system implementation process, the framework also introduces the system structure. The system uses a combination of the current framework of the more popular SSH development technology. In the presentation layer using Struts technology to achieve the classic MVC pattern, the presentation layer specification of the development process. In the business layer, the use of Spring component technology, with container-managed presentation layer of the controller and the data layer data access objects to improve system scalability. In the data persistence layer, Hibernate framework using technology to achieve the separation of data and services, reducing the system coupling. The results show that the development will be Struts, Spring and Hibernate technology integration as a combination of multi frame, greatly improving system maintainability, scalability, portability and reusability of components.Key Words: payroll management, SSH framework, MVC mode目录1 引 言11.1 编写目的11.2 项目背景11.3 系统概述11.3.1 系统说明11.3.2 具体要求11.3.3 系统设置22 系统开发技术32.1 JSP程序设计语言简介32.2 JAVA程序设计语言简介32.3 SSH框架简介32.4 MYSQL数据库简介42.5 TOMCAT服务器简介43 系统需求分析53.1 系统设计目标53.2 系统角色53.2.1 普通用户53.2.2 管理员53.3 系统需求模块53.3.1 登录模块53.3.2 前台浏览模块53.3.3 后台管理模块63.4 系统设计的特点64 系统概要分析与设计74.1 系统总体结构74.2 前台功能分析与设计74.3 后台功能分析与设计84.4 数据库分析与设计84.4.1 数据库设计94.4.2 表设计95 系统详细设计与实现125.1 系统登录模块125.2 前台功能模块125.2.1 查看个人信息模块135.2.2 查看考勤记录模块135.2.3 查看工资明细模块145.2.4 申请假期模块155.2.5 修改密码模块155.3 后台功能模块165.3.1 员工信息管理模块165.3.2 考勤记录管理模块185.3.3 工资管理模块195.3.4 部门信息管理模块215.3.5 岗位信息管理模块21总 结23参考文献24致 谢25附 录261 引 言1.1 编写目的随着计算机技术的发展,企业管理越来越趋于自动化,而工资管理是企业管理的重要组成部分,它与企业的财务管理、人事管理有着密切的联系。由于企业员工工资结构存在一定的规律性,工资发放在时间上和操作上存在一定的重复性,这使得企事业单位工资管理计算机化成为可能。本系统在此基础上实现了工资信息查询、人员信息管理、报表生成等功能。用户只要使用IE浏览器访问相关站点,输入正确的用户名和密码成功登录后,普通用户便可查询自己的工资情况和其他相关信息。对管理员来说使用起来也非常的方便快捷,可以进行科学、合理的对员工工资和人员进行管理。1.2 项目背景项目名称:基于Web的工资管理系统的设计与实现项目的提出者:马春辉开发者:马春辉 项目简介:本系统主要实现员工工资和员工信息管理。1.3 系统概述1.3.1 系统说明该系统着眼于员工工资业务的实际,对发放工资业务进行了细致的分析、研究,认真分析其业务流程,采用灵活方便的计算处理方式,改变手工操作的繁杂、低效、不宜操作、灵活性差的特点,提高其工作效率和效益。实现员工工资管理业务的制度化、现代化的管理。工资管理系统是为了能够迅速、准确地反映出用户需要的各种信息,及时方便的进行各种检索,从而为决策者做出准确的判断提供强有力的支持。计算机的使用使得企业管理变得更加合理,更加规范,更加科学。1.3.2 具体要求系统数据初始化;员工基本信息数据的查询、添加、修改、删除;企业工资结构的基本设定;企业工资参数的设定与管理;员工考勤的管理;员工个人工资表的查询;员工工资的浏览、修改、添加、删除;系统的维护包括用户的操作权限、密码修改。1.3.3 系统设置员工信息、部门信息、岗位信息、考勤记录等只能被管理员修改,添加,删除。员工可以查看个人信息、考勤记录、工资信息等。2 系统开发技术2.1 JSP程序设计语言简介JSP(Java Server Pages)是由Sun Microsystems公司倡导、许多公司参与一起建立的一种动态网页技术。JSP技术是在传统的网页HTML文件中插入Java程序段(Scriptlet)和JSP标记(tag),从而形成JSP文件,插入的Java程序段可以操作数据库、重新定向网页等。JSP页面由HTML代码和嵌入其中的Java代码所组成。服务器在页面被客户端请求以后对这些Java代码进行处理,然后将生成的HTML页面返回给客户端的浏览器。因此,客户端只要有浏览器就能浏览。JSP技术的设计目的是使得构造基于Web的应用程序更加容易和快捷,而这些应用程序能够与各种Web服务器,应用服务器,浏览器和开发工具共同工作。 JSP规范是Web服务器、应用服务器、交易系统、以及开发工具供应商间广泛合作的结果。在传统的网页HTML文件(*htm,*.html)中加入Java程序片段(Scriptlet)和JSP标记(tag),就构成了JSP网页(*.jsp)。Web服务器在遇到访问JSP网页的请求时,首先执行其中的程序片段,然后将执行结果以HTML格式返回给客户。程序片段可以操作数据库、重新定向网页以及发送 email 等,这就是建立动态网站所需要的功能。所有程序操作都在服务器端执行,网络上传送给客户端的仅是得到的结果,对客户浏览器的要求最低,可以实现无Plugin,无ActiveX,无Java Applet,甚至无Frame。2.2 Java程序设计语言简介Java语言是美国Sun公司于1995年推出的一种简单的、面向对象的、分布式的、可解释的、键壮的、安全的、结构的、中立的、可移植的、性能很优异的多线程的、动态的语言。其前身为OAK语言,是SUN公司为一些消费性电子产品而设计的一个通用环境。他们最初的目的只是为了开发一种独立于平台的软件技术。经过Sun公司的工程师的不懈努力以及全世界无数的编程爱好者的使用,Java终于发展成为今天这样一个集桌面(J2SE)、网络(J2EE)、移动平台(J2ME)应用为一体的功能强大的编程语言。目前Java由于其平台无关及分布式特性,最重要的应用是在网络应用上。2.3 SSH框架简介SSH框架是Spring+Struts+Hibernate组合框架的简称。Spring是一个开源框架,它由Rod Johnson创建。它是为了解决企业应用开发的复杂性而创建的。Spring使用基本的JavaBean来完成以前只可能由EJB完成的事情。然而,Spring的用途不仅限于服务器端的开发。从简单性、可测试性和松耦合的角度而言,任何Java应用都可以从Spring中受益。Struts是一种开发源代码的Web应用开发框架,Struts架构MVC(Model View Controller,模型-视图-控制器),将视图和模型分离,用户界面和事务逻辑分离,简化了程序开发者的开发和维护工作,提高了系统的灵活性、重用性和可维护性。Hibernate是一个开放源代码的对象关系映射框架,它对JDBC进行了非常轻量级的对象封装,使得Java程序员可以随心所欲的使用对象编程思维来操纵数据库。 Hibernate可以应用在任何使用JDBC的场合,既可以在Java的客户端程序使用,也可以在Servlet/JSP的Web应用中使用,最具革命意义的是,Hibernate可以在应用EJB的J2EE架构中取代CMP,完成数据持久化的重任。2.4 Mysql数据库简介MySQL是一个精巧的SQL数据库管理系统,虽然它不是开放源代码的产品,但在某些情况下你可以自由使用。由于它的强大功能、灵活性、丰富的应用编程接口(API)以及精巧的系统结构,受到了广大自由软件爱好者甚至是商业软件用户的青睐,特别是与Apache和PHP/PERL结合,为建立基于数据库的动态网站提供了强大动力。MySQL是一个真正的多用户、多线程SQL数据库服务器。2.5 Tomcat服务器简介Tomcat 很受广大程序员的喜欢,因为它运行时占用的系统资源小,扩展性好,支持负载平衡与邮件服务等开发应用系统常用的功能;而且它还在不断的改进和完善中,任何一个感兴趣的程序员都可以更改它或在其中加入新的功能。 Tomcat 是一个轻量级应用服务器,在中小型系统和并发访问用户不是很多的场合下被普遍使用,是开发和调试JSP 程序的首选。对于一个初学者来说,可以这样认为,当在一台机器上配置好Apache 服务器,可利用它响应对HTML 页面的访问请求。实际上Tomcat 部分是Apache 服务器的扩展,但它是独立运行的,所以当你运行tomcat 时,它实际上作为一个与Apache 独立的进程单独运行的。3系统需求分析3.1 系统设计目标员工工资管理系统用来对员工工资及员工相关信息进行管理。本系统可以方便管理员管理员工工资及相关信息,为管理员提供高效的工作效率与质量保证等,主要包括管理员登录、员工信息管理、工资结算管理、工资结构设置、考勤信息管理、部门信息管理、岗位信息管理。本系统还可以方便员工查看个人工资详细情况,主要包括查看个人信息及个人工资明细,并可以申请假期。3.2 系统角色3.2.1 普通用户员工通过该系统可以查看个人相关信息、每月工资信息、每月考勤信息,可以修改密码,并可以向上级申请假期。3.2.2 管理员管理员通过该系统可以管理员工信息(包括增加、删除、修改、查看员工信息)、管理员工工资信息(包括查看员工工资信息、工资结算、设置工资结构)、管理部门信息(包括对部门信息的增删改查)、管理岗位信息(包括对岗位信息的增删改查)。3.3 系统需求模块3.3.1 登录模块关联角色:员工、管理员。需求描述:员工登录该系统进入前台浏览页面,管理员登录该系统进入后台管理页面。备注说明:只有合法用户才能进入相关界面。3.3.2 前台浏览模块关联角色:员工。需求描述:员工可以查看个人详细信息、工资信息、考勤信息,可以申请假期。备注说明:员工只能查看个人相关信息。3.3.3 后台管理模块关联角色:管理员。需求描述:管理员可以进行员工信息管理、员工工资管理、部门信息管理、岗位信息管理、工资管理(包括工资结算、工资结构设置)。3.4 系统设计的特点采用MVC(Model、View、Control)架构,结合SSH(Spring+Struts+Hibernate)框架实现系统的功能。MVC:当前非常流行的一种系统架构模式。MVC作为模式:提供一个原则,可以按照模型(model)、界面(view)、控制(control)等角色把一个应用系统的各个部分之间的耦合解脱、分割开来。MVC(Model-view-controller pattern)模式由三部分组成:模型(Model):是一组表示应用系统商业逻辑的对象。它通常包括表示商业抽象的类(如:账号、采购等等)和现实世界的对象(如职员、客户等)。视图(View):是用一种向用户表达信息的具体方式。要理解视图的捷径是把视图想象成为一个具体的网页或者屏幕,它能够给用户提供一组互相有关的信息。 控制(Controller):是应用系统处理具体流程和导向的核心部分。它把模型对象给出的信息翻译成视图可以理解的形式,并且处理系统流程的走向,例如视图在下一个回应中将会给用户什么样的反馈。MVC的关键是商业模型的设计与实现可以独立于应用系统的结构设计与实现(控制)和界面的设计与实现(视图)。本系统采用的是SSH(Struts + Spring + Hibernate)三层架构。Struts用于表现层,负责页面数据提取,页面动作响应。Spring是一种轻量级的框架模型,主要负责业务逻辑层的对象创建,表现层的Action的创建,以及持久层的DAO的创建。Hibernate负责把内存中的数据对象保存到数据库中。在SSH三层架构中,主要用Struts来实现对页面的响应就页面跳转。当用户向服务器发送某一个请求,这个请求会被服务器(Tomcat)接收到,服务器会根据请求的内容,将这个请求发送给相应的Servlet实例进行处理。Servlet会根据其内容,去生成相应的Action实例。本程序中,Struts将Action的创建工作交给了Spring的代理类来完成,创建这个实例后,将这个实例注入,由Struts调用Action中的相应方法。Action中可以配置一个或多个Service对象,Action调用Service中的方法进行业务处理。Service中通常会有一个或多个DAO的对象,DAO继承了Hibernate的借口,用来处理数据库的操作。而Action,Service,DAO的创建与注入,都是由Spring的Bean工厂来实现的。4 系统概要分析与设计4.1 系统总体结构本系统主要由登录模块、前台员工浏览模块、后台管理员管理模块构成。普通员工正确登录后进入前台员工浏览界面,管理员正确登录后进入后台管理员管理界面。系统结构图如图4-1所示:图4-1 系统结构图4.2 前台功能分析与设计前台功能主要有员工查看个人信息、查看工资明细、查看考勤信息、申请假期、修改登录密码等。前台页面设计如图4-2所示:图4-2 前台页面跳转图4.3 后台功能分析与设计后台功能主要有员工信息管理(包括增加、删除、修改、查看员工信息)、员工工资管理(包括查看员工工资、设置岗位工资结构、工资结算等)、考勤记录管理(考勤内容有出差、加班、请假、迟到早退、旷工等)、部门信息管理(包括增加、删除、修改、查看员工信息)、岗位信息管理(包括增加、删除、修改、查看岗位信息)。后台页面设计如图4-3所示:图4-3 后台页面跳转图4.4 数据库分析与设计由于企业组织结构呈树形,即一个企业有多个部门;一个部门有多个岗位,一个岗位对应一个岗位工资结构,每个岗位有多个员工;每个员工有多条考勤记录和工资发放记录,一个员工对应一个系统用户身份。从上往下看,基本都是一对多或一对一的关系,而在本系统中我使用了Hibernate技术和Java编程思想,在建立实体抽象时,分别作了一些对应的引用来实现数据库表之间的关联,这样不仅充分运用了面向对象编程的思想,并简化了表的结构,使得数据库管理更合理化。4.4.1 数据库设计建立数据库employeemanage,包含的表如图4-4所示:图4-4 数据库表图4.4.2 表设计部门表如图4-5所示:图4-5 部门表岗位表如图4-6所示:图4-6 岗位表员工表如图4-7所示:图4-7 员工表岗位工资结构表如图4-8所示:图4-8 岗位工资结构表用户表如图4-9所示:图4-9 用户表工资记录表如图4-10所示:图4-10 工资记录表考勤记录表如图4-11所示:图4-11 考勤记录表考勤表如图4-12所示:图4-12考勤表5 系统详细设计与实现系统功能模块主要有登录模块、前台功能模块、后台功能模块等。5.1 系统登录模块系统用户输入正确的用户名和密码可登录系统。若为普通员工则进入前台浏览首页,若为管理员则进入后台管理页面。系统登录页面如图5-1所示:图5-1 系统登录页面实现代码部分如下:String identify=userService.login(user);if(identify.equals("admin")return "adminLogin_succ"else if(identify.equals("emp")return "empLogin_succ" elsereturn "login_fail" 5.2 前台功能模块前台功能模块主要由查看个人信息、考勤记录、工资明细,申请假期,修改密码等模块组成。前台首页如图5-2所示:图5-2 前台首页5.2.1 查看个人信息模块员工点击个人详细信息按钮,可查看个人详细信息。个人信息页面如图5-3所示:图5-3 个人信息页面5.2.2 查看考勤记录模块员工点击考勤记录按钮,可查看个人考勤记录信息。考勤记录页面如图5-4所示:图5-4 个人考勤记录页面5.2.3 查看工资明细模块员工点击工资明细按钮,可查看个人工资明细情况。工资主要由岗位基本工资、五险一金、考勤相应奖罚金额等组成。工资明细页面如图5-5所示:图5-5 工资明细页面5.2.4 申请假期模块员工点击申请假期按钮,可进入假期申请页面,需填写请假理由、请假时间等信息。申请假期页面如图5-6所示:图5-6 申请假期页面实现代码部分如下:userService.applyLeave(leaveInfors);5.2.5 修改密码模块员工点击修改密码按钮,可以修改登录密码,需键入旧密码、新密码、新密码确认等信息。修改密码页面如图5-7所示:图5-7 修改密码页面实现代码部分如下:User user=(User)this.getSession().getAttribute("user");User.setPassword(newPassword);userService.updateUser(user);5.3 后台功能模块后台功能模块主要由员工信息管理、考勤记录管理、工资管理、部门信息管理、岗位信息管理等模块组成。5.3.1 员工信息管理模块点击员工信息管理菜单系统列出员工信息管理的子菜单,包括增加员工信息、删除员工信息、修改员工信息、查看员工信息等。1> 增加员工信息。需填写员工姓名、性别、住址、联系方式、电子邮箱、身份证号等基本信息,并选择员工所属部门和岗位,还可以上传照片,最后选择提交,信息合法即可添加成功,系统自动生成员工编号。增加员工信息页面如图5-8所示:图5-8 增加员工信息页面实现代码部分如下: employeeService.addEmployee(post,employee);2> 删除员工信息。点击删除员工信息菜单,系统列出员工列表,从列表中选择或直接搜索员工,点击删除按钮,确认删除即可删除该员工相关信息。删除员工信息页面如图5-9所示:图5-9 删除员工信息页面实现代码部分如下:employeeService.deleteEmployee(empNOs);3> 修改员工信息。点击修改员工信息菜单,系统列出员工列表,从列表中选择或直接搜索员工,点击修改按钮,系统列出该员工详细信息,并可以进行修改。修改员工信息页面如图5-10所示: 图5-10 修改员工信息页面实现代码部分如下:employeeService.updateEmployee(empNO,employee);4> 查看员工信息。点击查看员工信息菜单,系统列出员工列表,从列表中选择或直接搜索员工,系统列出该员工的详细信息。查看员工信息页面如图5-11所示: 图5-11 查看员工信息页面实现代码部分如下:List<Employee> employeeList=employeeService.lookEmployee();this.getRequest().setAttribute("employeeList",employeeList);5.3.2 考勤记录管理模块点击考勤记录管理菜单系统列出考勤管理子菜单,包括查看考勤记录、加班管理、出差管理、迟到管理、旷工管理、请假管理等。1> 查看考勤记录。点击查看考勤记录菜单,可查看员工考勤记录。2> 员工加班管理。点击加班管理菜单,可添加员工加班记录。3> 员工出差管理。点击出差管理菜单,可添加员工出差记录。4> 员工迟到管理。点击迟到管理菜单,可添加员工迟到记录。5> 员工旷工管理。点击旷工管理菜单,可添加员工旷工记录。6> 员工请假管理。点击请假管理菜单,可添加员工请假记录。员工加班管理页面如图5-12所示:图5-12 员工加班管理页面(check_extra.jsp)实现代码部分如下:checkRecordService.checkExtra(empNOs);员工出差、迟到、旷工、请假等管理页面与图类似。5.3.3 工资管理模块点击工资管理菜单系统列出工资管理子菜单,主要有工资发放记录、设置岗位工资结构、工资结算等。1> 查看员工工资发放记录。点击工资发放记录菜单,可查看员工工资明细及发放情况。工资查看页面如图5-13所示:图5-13 工资查看页面(salary_look.jsp)实现代码部分如下:List<SalaryRecord> salaryRecordList=salaryRecordService.lookSalaryRecords(department);this.getRequest().setAttribute("salaryRecordList", salaryRecordList);2> 设置岗位工资结构。点击工资设置菜单,可设置岗位工资结构和各工资项相应金额。选择岗位名称,设置该岗位基本工资、医疗保险金额、养老保险金额、失业保险金额、工伤保险金额、生育保险金额、住房公积金、出差补助、加班奖金、请假扣额、迟到早退罚金、旷工罚金等。工资结构设置页面如图5-14所示: 图5-14 工资结构设置页面(salary_set.jsp)实现代码部分如下:postSalaryService.setPostSalary(post,posSalary);3> 工资结算。点击工资结算菜单,可结算当月员工工资。工资计算相关公式如下:员工总工资=岗位基本工资+三金五险+考勤奖罚金额 公式 5-1实际发放金额=岗位基本工资+考勤奖罚金额 公式 5-2工资结算页面如图5-15所示:图5-15 工资结算页面(salary_account.jsp)实现代码部分如下: salaryRecordService.accountSalary(String empNOs);5.3.4 部门信息管理模块点击部门信息管理菜单系统列出部门信息管理子菜单,主要有增加部门信息、删除部门信息、修改部门信息、查看部门信息等。1> 增加部门信息。点击增加部门信息菜单,可增加部门信息。需填写部门名称,部门描述等信息。点击提交按钮,信息合法即可添加成功,系统自动生成部门编号。2> 删除部门信息。点击删除部门信息菜单,系统列出部门信息列表,从列表中选择或直接搜索部门,点击删除按钮,确认删除即可删除该部门信息。3> 修改部门信息。点击修改部门信息菜单,系统列出部门信息列表,可从列表中选择或直接搜索部门,点击修改按钮,系统列出该部门详细信息并可以进行修改。4> 查看部门信息。点击查看部门信息菜单,系统列出部门信息列表,可从列表中选择或直接搜索部门,系统列出部门详细信息。修改部门信息页面如图5-16所示:图5-16 修改部门信息页面(dept_update.jsp)实现代码部分如下:departmentService.updateDepartment(department);5.3.5 岗位信息管理模块点击岗位信息管理菜单系统列出岗位信息管理子菜单,主要有增加岗位信息、删除岗位信息、修改岗位信息、查看岗位信息等1> 增加岗位信息。点击增加岗位信息菜单,可增加岗位信息。需填写岗位名称,岗位描述等信息,并选择岗位所属部门。点击提交按钮,信息合法即可添加成功,系统自动生成岗位编号。2> 删除岗位信息。点击删除岗位信息菜单,系统列出岗位信息列表,从列表中选择或直接搜索岗位,点击删除按钮,确认删除即可删除该岗位信息。3> 修改岗位信息。点击修改岗位信息菜单,系统列出岗位信息列表,可从列表中选择或直接搜索岗位,点击修改按钮,系统列出该岗位详细信息并可以进行修改。4> 查看岗位信息。点击查看岗位信息菜单,系统列出岗位信息列表,可从列表中选择或直接搜索岗位,系统列出岗位详细信息。增加岗位信息页面如图5-17所示:图5-17 增加岗位信息页面(post_add.jsp)实现代码部分如下:postService.addPost(post,department);总 结毕业设计是我大学生涯的最后一次作业,所以我很认真地对待毕业设计。实习期间我去了大连安博参加实训,通过实训我学到了很多编程知识,这些为我的毕业设计打下了基础。由于已经有过两次项目经验,所以我做毕业设计时思路比较清晰。从项目需求分析,到概要设计,到详细设计,再到系统实现,期间我搜集了很多相关的资料,这些给了我很多启发,使我的毕业设计越来越成熟。但是,做项目具体实现时还是遇到很多问题,比如表结构设计不完善,表关联设计不合理,这些都费了很大功夫,后来理清思路,重新设计,把底层搭建好后,后期的工作才越来越顺手。毕业论文是很重要的一部分,到目前为止已基本完成,有不妥的地方请多多指教。参考文献1李代平软件工程M北京:清华大学出版社,2006.2BlochJ.Effective Java M北京:机械工业出版社,2003.3张永强Java程序设计应用教程M北 京:电子工业出版社,2007.4孙鑫Java Web开发详解M北京: 电子工业出版社,2006.5向传杰JSPServlet基础案例教程M北京:电子工业出版社,2006.6刘晓华JSP应用开发详解(第三版)M北京: 电子工业出版社,2005.7伯格斯坦JSP设计M. 北 京:中国电力出版社,2002.8邓子云,张赐JSP网络编程从基础到实践M北京:电子工业出版社,2005.9萨师煊,王珊数据库系统概论M北京:高等教育出版社,1983.10粟菊民Java Web 应用程序设计M北京:机械工业出版社,200711甘容,李明东.“人事工资管理信息系统员工工资信息查询模块的实现”. 甘肃科技,2007.致 谢四年大学生活即将过去,在毕业设计这最后一程里有领导的关怀,有导师的指导,有同学的帮助,这段时间让我学到了很多,收获了很多,这对即将毕业的我来说是很宝贵的财富。在这里特别感谢毕业设计导师。从选题、开题报告、项目编写乃至论文的撰写都是您给予我认真的、细致的、具体的指导,使我才能完成毕业设计和论文撰写的工作。也特别感谢小组成员的协助与支持,使我能够顺利及时地完成毕业设计。感谢所有领导、老师、同学、朋友的帮助,在以后的学习和工作中我会严格要求自己,并将把你们的无私帮助牢记在心。同时也感谢学院为我提供良好的环境使我顺利完成毕业设计。 最后,我要向百忙之中抽时间对本文进行审阅,评议和参与本人论文答辩的各位老师表示感谢。 附 录源代码清单实体类与数据库表映射文件如下(以Employee.hbm.xml为例):<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE hibernate-mapping PUBLIC "-/Hibernate/Hibernate Mapping DTD 3.0/EN""<hibernate-mapping package="com.cc.entity"><class name="Employee"><id name="eid" column="emp_id"><generator class="native"/></id><property name="no" column="emp_no" unique="true"/><property name="name" column="emp_name"/><property name="sex" column="emp_sex"/><property name="birthday" column="emp_birthday"/><property name="phone" column="emp_phone"/><property name="email" column="emp_email"></property><property name="address" column="emp_address"/><one-to-one name="user"class="User"cascade="all"></one-to-one><many-to-one name="post"column="pid"class="Post"cascade="all"not-null="false"lazy="false"fetch="join"></many-to-one><set name="checkRecords" cascade="all"><key column="eid"></key><one-to-many class="CheckRecord"/></set><set name="salaryRecords" cascade="all"><key column="eid"></key><one-to-many class="SalaryRecord"/></set></class></hibernate-mapping>Dao层接口实现类如下(以EmployeeDaoImpl类为例):package com.cc.dao.impl;import