基于jsp设计的人事管理系统(含源文件)
- 格式:doc
- 大小:668.50 KB
- 文档页数:18
人事管理子系统软件结构设计人事管理子系统软件结构设计文档1. 引言近年来,随着企业规模不断扩大,传统的人力资源管理已经无法满足企业发展的需求。
因此,各家企业开始采用人事管理子系统软件,实现快速高效的人力资源管理。
为此,本文将详细介绍人事管理子系统软件的结构设计。
2. 系统架构设计人事管理子系统软件采用B/S结构,分为前端和后端两个部分。
其中,前端采用网页形式展示数据和功能,后端是由数据库、应用服务器和控制器组成的程序。
2.1 前端设计前端主要设计为网页形式,用于展示数据和功能。
前端程序包括主页、导航条、数据展示页面、数据录入页面等组成部分。
主页:主页是整个系统的入口,主要功能是展示系统的各个模块和功能。
主页由导航条、轮播图和功能图标等组成。
同时,主页还应该设计一个登录界面,确保系统的安全性。
导航条:导航条位于页面头部,负责导航到各个模块。
导航条可以根据不同的用户设置权限,不同的用户可以看到不同的导航菜单。
同时,导航条还可以配置各个模块的访问与操作权限。
数据展示页面:数据展示页面是用户查看数据的主要页面。
该页面应该以表格的形式展示数据,同时提供多种方式的数据筛选、过滤和排序功能,以便用户快速查询和分析数据。
数据录入页面:数据录入页面是用户添加、修改和删除数据的主要页面,应该提供简单易用的控件,同时保证输入数据的安全性。
当用户添加数据时,应该对数据进行各种校验,防止数据的重复。
2.2 后端设计后端程序采用MVC模型,分为模型层、控制器层和视图层三个部分。
模型层:模型层主要负责数据的存储和处理,包括与数据库交互、数据校验和数据转换等。
模型层应该能够处理各种类型的数据,并支持灵活的增删改查操作。
同时,模型层还需要处理数据间的关联关系和约束条件,确保数据的完整性。
控制器层:控制器层主要负责逻辑处理和业务流程控制。
控制器层与模型层协同工作,同时处理前端页面发送的请求。
控制器层根据用户的请求,调用相应的模型层方法进行数据访问和操作,并返回数据给前端页面。
实验一软件需求分析实验项目名称:软件需求分析实验目的:1) 掌握系统的功能描述、性能描述方法;2) 掌握需求分析工具数据流程图、数据字典等;3) 掌握系统需求分析的步骤和方法。
实验内容:用结构化数据流分析技术进行软件系统需求分析,得出系统的数据流程图和数据字典。
实验步骤:1) 到相关单位进行需求分析2) 综合利用 Internet 网和相关书籍整理并完善需求分析。
3) 画出系统数据流图(分析系统是事务型还是变换型)4) 得出系统数据字典1. 软件系统需求描述:(从功能,性能上进行描述)功能需求:确定新系统应做什么 ,这算最主要的需求 .该系统就是对A 公司的人员信息进行录入,修改,删除,查找以及表单输出 ..性能需求:给出所开发的新系统的技术性能指标 ,包括存储容量限制 ,运行时间限制,安全保密性等.2. 软件系统数据流程(由加工、数据流、数据存储、源点和终点四种元素组成):顶层数据流图11)2) 1 层数据流图3) 0 F21合同到期信息F12部门信息F14工作变动F38批假信息F46福利信息F51工资表F25奖惩信息F43考勤统计信息F35请假信息F24培训信息F32考核汇总信息F1员工基本信息F2员工分布信息F17合同记录F33考勤信息F34请假信息F21培训信息F26奖惩信息F30工作信息P0人事管理系统E2经理E1 员工P0 人事管理系统F1员工基本信息F2员工分布信息P1人员管理F21合同到期信息F12部门信息F14工作变动信息F17 合同记录F5职务信息F13员工分布信息E1 员工F33考勤信息F34请假信息P3工资管理F38批假信息F46福利信息F51工资表E2经理F28奖惩信息F21培训信息F30工作信息F26奖惩信息P2工作管理F35请假信息F43考勤统计信息F25奖惩信息F24培训信息F32考核汇总信息002 层数据流图3. 软件系统数据字典1) 数据流条目员工信息表(DD_hrworker): 名字 : 员工信息表 别名:员工信息描述:记录企业员工的基本信息定义: 员工信息表=员工编号+员工姓名+1 级部门+2 级部门+性别+职位+电子邮件+身份证号+ 出 生 日 期+民 族+户 籍 所 在 地+婚 姻 情 况+毕 业 学 校+专 业+学 历+毕 业 时 间+入 职 时 间+联 系电话+家庭住址+紧急联系人+紧急联系电话离职信息表(DD_hrlworker):P1 人员管理F1员工 档案信息 F2员工 职务 信息E1 员工P1.1 人 员 信 息 管理F3员工 基本信息 F4员工分布信息 S5S6F10应聘人员记录 S4 应聘人员记录F7部门信息S1 部门基本信息F9部门编制S3 部门编制员工档案员工分布信息F6员工 分布信息P1.2部 门 管 理F5员工 分布信息F12部门信息S22 部门信息表F16修改员工 职务信息P1.3 工 作 变 动 管理S7 合同记录F17 合同记录S8 转正提醒记录F11部门信息 F8职务基本信息S2 职务基本信息F15工作 变动记录F19转正信息F18合同记录F20转正 提醒记录P1.4合 同 管 理F13员工 职务信息 F14工作 变动信息E2 经理F21合同 到期信息S9 工作变动记录名字:离职信息表别名:离职信息描述:记录企业离职员工的信息定义:员工信息表=员工编号+员工姓名+1 级部门+2 级部门+性别+职位+电子邮件+身份证号+ 出生日期+民族+户籍所在地+婚姻情况+毕业学校+专业+学历+毕业时间+入职时间+离职时间+离职成本+离职类型+联系电话+家庭住址+紧急联系人+紧急联系电话员工转正信息表(DD_hrrenew):名字:员工转正信息表别名:转正信息描述:记录企业引进转正员工的信息定义:员工转正信息表=转正编号+转正员工的编号+转正员工姓名+转正时间+原定转正时间+ 试用期工资+转正工资借调信息表(DD_hrborrow):名字:借调信息表别名:借调信息描述:记录企业借调人员相关信息。
O课程设计报告基于JSP的图书管理系统专业班级:计科姓名:XXX学号:123456指导老师:XXXX2011年1月1日第一章绪论1.1 课题的研究背景图书馆在正常运营中面对大量书籍、读者信息以及两者间相互联系产生的借书信息、还书信息。
现有的人工记录方法既效率低又错误过多,大大影响了图书馆的正常管理工作。
因此需要对书籍资源、读者资源、借书信息、还书信息进行管理,及时了解各个环节中信息的变更,有利用管理效率的提高。
第二章系统开发工具及相关技术介绍2.1 JSP技术JavaServer Pages 技术是一个纯Java平台的技术,它主要用来产生动态网页内容。
在传统的网页HTML文件中加入Java程序片段和JSP 标记,就构成了JSP网页。
Web服务器接收到访问JSP网页的请求时,首先执行其中的程序片段,然后将执行结果以HTML格式返回给客户。
JSP是基于Java Servlet以及整个Java体系的Web开发技术,利用这一技术可以建立先进、安全、快速和跨平台的动态网页。
JSP在多个方面加速了动态的Web页面的开发:程序写一次,到处可以运行。
JSP在设计时,充分考虑到应用平台的无关性。
依赖于Java的可移植性,JSP得到目前许多流行操作平台的支持,可在Apache、NetScape、IIS等服务器上执行。
执行速度快。
JSP页面只需编译一次转化为Java字节代码,其后一直驻留于服务器内存中,加快了对JSP页面的响应速度。
若不考虑JSP 页面第一次编译所花的时间,则JSP的响应速度要比ASP快得多。
Java的优势。
JSP技术是用Java语言作为脚本语言的。
跨平台、成熟、健壮、易扩充的Java技术使得开发人员的工作在其他方面也变得容易和简单。
Java语言通过提供防止内存泄漏的方法,在内存管理方面大显身手。
加之,JSP为应用程序提供了更为健壮的意外事件处理机制,充分发挥了Java的优势。
JSP标签可扩充性和跨平台的可重用性。
《数据库系统概论》课程设计课程设计题目人事管理系统设计一.摘要为了完善全面的人事管理功能,使人事企业管理流程合理化和自动化处理和分析各种有价值的信息,以支持决策者制定人事企业管理战略发展计划。
该系统采用了SQLServer2000数据库开发环境,使用专用数据库接口连接,其存取速度快、安全性好,便于管理和操作。
整个系统从符合操作简便、界面友好、灵活、实用、安全的要求出发,完成人事管理全过程,包括员工的基本信息、学历和任职信息、家庭状况、奖惩信息、员工各种信息的修改、对于转出、辞职、退休员工信息的删除等管理工作。
经过实际使用证明,该文所设计的人事管理系统可以满足公司人事管理方面的需要。
二、前言随着计算机技术的飞速发展,计算机在企业管理中应用的普及,利用计算机实现企业人事档案的管理势在必行。
人事管理系统是现代企业管理工作不可缺少的一部分,是适应现代企业制度要求、推动企业劳动人事管理走向科学化、规范化的必要条件。
人事管理系统可以用于支持企业完成劳动人事管理工作,有如下3个方面的目标。
1.支持企业实现规范化的管理。
2.支持企业高效率完成劳动人事管理的日常业务,包括新员工加入时人事档案的建立,老员工转出、辞职、退休等。
3.支持企业进行劳动人事管理及其相关方面的科学决策,如企业领导根据现有的员工数目决定招聘的人数等。
三、系统设计3.1设计思想尽量采用学校现有软硬件环境,及先进的管理系统开发方案,从而达到充分利用学校现有资源,提高系统开发水平和应用的目的。
1.系统应符合学校人事管理的规定,满足学校日常人事管理工作需要,并达到操作过程中的直观、方便、实用、安全等要求。
2.系统采用模块化程序设计方法,既便于系统功能的各种组合和修改,又便于未参与开发的技术维护人员补充、维护。
3.系统应具备数据库维护功能,及时根据用户需求进行数据的添加、删除、修改、备份等操作。
3.2 系统功能分析该系统需要完成如下功能:1. 实现部门、职务、职称等信息的管理;2. 实现职工信息的管理:3. 实现职工学习经历和任职经历的管理;4. 实现职工家庭关系的管理;5. 实现奖惩信息的管理;6. 创建存储过程查询各部门各种职称的职工数量;7. 创建视图查询各职工的工号、姓名、部门、职务信息;8.创建触发器当增加、删除职工和修改职工部门信息时自动修改相应部门的职工人数;9.建立数据库相关表之间的参照完整性约束。
目录一、引言 (2)(一)系统开发背景 (2)(二)课题的提出 (2)二、需求分析 (3)(一)系统目标 (3)(二)系统运营环境 (3)(三)功能需求 (4)(五)系统流程图 (5)(六)数据字典 (7)三、系统设计 (11)(一)代码设计 (11)(二)系统功能模块设计 (12)(三)数据库设计 (13)四、系统实现 (17)(一)程序流程说明 (17)(二)系统测试说明 (18)(三)系统运行的管理与维护 (19)五、总结 (21)(一)系统存在不足和改进方案 (21)(二)设计心得 (21)一、引言(一)系统开发背景人事管理系统的发展历史可以追溯到20世纪60年代末期.当时计算机技术已经进入实用阶段,为了解决企业手工计算发放薪资费时、费力又易出错等问题,第一代人事管理系统应运而生.随着计算机的普及、计算机系统工具和数据库技术的发展,20世纪70年代末出现了第二代人事管理系统。
该系统基本上解决了第一代系统的主要缺陷,功能也有较大的改善.经过将近40年的发展,如今大多数公司普遍使用的是第三代人力资源管理信息系统[1]。
人事管理系统的出现彻底改变了传统企业人员管理模式,将系统管理、人事档案管理、考勤管理、工资管理等相对分散的功能集合成一个高效、便捷的网络化智能管理平台,将企业人事部门管理人员从繁重的日常琐碎事务中解放出来,将更多的精力用于企业的人事职能管理和管理决策,保持企业的持续高效运营,从而提高了企业整体的科技含量和管理效率,大大加快企业的信息化建设步伐。
(二)课题的提出随着科学技术的不断提高,计算机科学的日渐成熟,人事管理系统的强大的功能已为人们深刻认识,它已进入人类社会的各个领域并发挥着越来越重要的作用。
作为计算机应用的一部分,使用计算机对公司人事信息进行管理,具有检索迅速、查询方便、可靠性高、存储量大、保密性好、成本低等优点.这些优点能够极大地提高公司管理的效率,也是企业人事管理科学化、正规化的重要条件[2].因此,开发这样一个公司管理系统,是相当有意义的。
课程设计报告学生姓名:学号:学院:经济管理学院班级:题目: 人事管理系统工资管理子系统指导教师:职称:20 年月日1.选题背景 (3)2.工资管理子系统需求分析 (3)2.1工资管理子系统需求陈述 (3)2.2需求分析 (4)2.2.1功能需求 (4)2.2.2性能需求 (4)2.3系统需求建模 (5)2.3.1确定参与者 (6)2.3.2确定用例 (6)2.3.3系统用例建模 (6)2.3.4用例描述 (7)3.工资管理系统系统分析 (8)3.1系统用例建模 (9)3.2静态结构模型 (16)3.2.1类的识别 (16)3.2.2类的关联分析 (17)3.3.3类的属性描述 (18)3.3.4类的构建 (19)3.3系统动态模型 (19)3.3.1系统执行顺序分析 (19)3.3.2系统协作分析 (21)3.3.3系统状态分析 (22)3.3.4系统活动分析 (22)4.工资管理系统系统设计与实现 (24)4.1UML体系结构设计 (24)4.1.1硬件体系结构设计 (24)4.1.2软件体系结构设计 (25)4.2对象模型设计 (25)4.3系统实现 (25)4.3.1组件分析 (26)4.3.2配置分析 (28)5.课程设计心得体会 (28)参考文献 (29)1.选题背景随着社会的进步和计算机技术的发展,特别是微型计算机的大范围普及,现在应用在大中型企业的信息管理系统中,几乎都包括了工资管理模块。
有些环境中是有大型ERP软件中的一个模块引进的,有些作为企业的财务系统的一部分。
计算机处理的数据量不断增加。
文件管理系统采用的一次最多存取一个记录的访问方式,以及在不同文件之间缺乏相互联系的结构,越来越不能适应管理大量数据的需要,于是数据库管理系统便应运而生。
有了数据库我们便能方便快捷的对数据进行读取、存取,并维护数据库的数据。
但,西方管理制度设计的工资管理软件,在很多时候还不能完成解决中国特色中小企业的问题,本文介绍的毕业设计的研究工作就是要为这些具有中国特色的中小企业解决他们在工资管理方面的问题。
JSP课程设计第1章课程设计目的与要求 (1)1.1 课程设计目的 (1)1.2 课程设计的实验环境 (1)1.3 课程设计的预备知识 (1)1.4 课程设计要求 (1)第2章课程设计内容 (2)2.1 系统设计 (2)2.2 数据库模型 (3)2.3 模块与功能设计 (4)2.4 模块主要代码 (7)第3章课程设计总结 (16)参考文献 (17)第1章课程设计目的与要求1.1 课程设计目的本课程的课程设计实际是网络技术专业学生学习完《JSP语言程序设计》课程后,进行的一次全面的综合训练,其目的在于加深对JSP语言程序设计的基础理论和基本知识的理解,掌握运用JSP动态网页编程技术开发应用程序的基本方法。
1.2 课程设计的实验环境硬件要求:能运行Windows 9.X操作系统的微机系统。
软件要求:JDK、tomcat6.0、SQL Server 2000。
1.3 课程设计的预备知识熟悉JSP语言程序设计的基本知识及应用开发的编程思想。
1.4 课程设计要求按课程设计指导书提供的课题,应根据下一节给出的基本需求独立完成各个方面的设计,标有“可选”的部分可根据设计时间的安排及工作量的大小适当选择。
选用其他课题或不同的数据库系统,可以组成设计小组,分模块进行,共同协作完成一个课题的开发任务。
要求书写详细的设计说明书,对复杂的代码段和程序段,应画出程序流程图。
在界面设计中,设计好每个窗口的布局,有多个窗口时,按模块调用的方式画出窗口调用图,用手工画好报表和标签样式,严禁相互抄袭。
第2章课程设计内容2.1系统功能分析2.1.1 系统功能分析人事管理是企业管理的重要内容,如何管理好一个企业内部员工的信息,成为企业管理中的一个大的问题。
此时,一个规范、自动的人事管理系统的使用显得尤为重要。
根据人事管理的实际要求,结合人事信息管理的实际流程,“人事管理系统”可以满足以下要求:1.能够掌握企业员工的基本信息,其中包括编号、姓名、性别、籍贯、民族、出生年月、政治面貌、专业、学历、家庭住址、婚姻状况、电话、身份证号等信息,除此之外还可以掌握每个员工的工作信息、调动信息、培训信息、奖惩信息等相关信息。
2.管理人员能够对本系统做相应的管理工作,可以对员工信息进行变动管理,如进行数据添加、查找和修改等操作。
而浏览者只可以查看其相应的内容,不可以进行其他操作。
2.1.2 系统功能模块设计由于人事管理系统主要面向的是小型企业的日常工作,所以设置的模块尽可能的满足企业的日常办公即可,其中设计的功能模块如图2.1所示。
图2.1 功能模块图2.2 数据库模型2.2.1 数据库需求分析人事管理系统主要包含以下数据项和数据结构:人员档案表:员工编号、姓名、性别、出生日期、籍贯、婚姻状况、政治面貌、学历、专业、毕业院校、毕业时间、公积金号、职务、职称等相关信息。
培训管理表:员工编号、培训名称、培训内容、培训日期和培训单位。
职称评定表:员工编号、职称、取得日期、取得方式、职务、起始日期、结束日期。
奖惩管理表:员工编号、职称、奖/惩、奖惩内容、奖惩原因、开始日期。
人员调动表:员工编号、调动日期、调动前部门、调动后部门、调动前职务、调动后职务。
2.2.2 数据库概念结构设计数据库概念设计最常用的方法是实体-联系方法。
此方法是用E-R图来描述的,此图是描述现实世界的有力工具,它可以很清晰地表示出实体之间的关系。
人事管理系统涉及到了人员档案、培训管理、职称评定、奖惩管理和人员调动五个实体属性。
在这里只介绍人员档案和培训管理两个实体的属性内容,其属性如下图所示。
图2.2 人员档案属性图图2.3 培训管理属性图2.2.3数据库逻辑结构设计本系统的逻辑设计是将人事管理系统的数据库概念结构转化为SQL 2000数据库系统所支持的实际数据模型,即:数据库的逻辑结构。
此系统共建立五个数据表,如人员档案表、培训管理表、职工评定表、奖惩管理表以及人员调动表。
这里只对人员档案、培训管理两个数据表进行说明,具体情况如表所示:表2.1 人员档案表2.3 模块与功能设计在人事管理系统的设计过程中,为了设计的简便可将其模块化,每个模块都分配相应的功能,这样就会大大减少设计人员的工作量。
在此系统中,主要设计了人员档案管理、培训管理、职称评定、奖惩管理和人员调动管理几个应用模块。
在系统启动时还有登陆模块设计,在进入系统时管理员需要输入用户名和密码,只有拥有管理权限的人员才可以对系统数据进行修改、添加等相关操作,而其他浏览者只能查看相应的基本信息。
用户登陆模块如同2.4所示:图2.4 用户登录只有具有管理员权限的用户才能登入系统,在登录之前需要用户输入用户名和密码,这样的设计是为防止其他人员随意的对系统进行误操作或更改。
此时,当用户输入了正确的用户名和密码之后就可以登录到系统,否则系统会提示重新输入正确的用户名和密码。
登录界面如图2.5所示。
图2.5 登录界面在主操作界面中可以看到人员管理、培训管理、职称评定、奖惩管理和人员调动几个主要功能模块。
在每个功能模块下还设计有对应的子模块,点击相应的链接就可以进入其子模块。
如在“人员档案”模块中就分有管理人员档案、添加人员档案和修改人员档案三个子模块。
每个子模块都有自己的详细的功能:“管理人员档案”子模块可以总体浏览员工的基本信息,并且能够对其进入修改或删除操作;“添加人员档案”子模块功能是将员工的基本信息录入系统数据库中,界面如图2.6所示;“修改人员档案”子模块是将变动的人员信息进行更改。
图2.6 “添加人员档案”子模块“培训管理”模块:在员工上岗之前各个企业都会对员工进行岗前培训,此模块中就涉及了多个字段,如员工编号、培训名称、培训内容以及培训时间等。
该模块还分为“管理培训记录”、“添加培训记录”和“修改培训记录”三个子模块,如图2.7所示。
图2.7 “修改培训记录”子模块在上一图中可以看到子模块中的各个数据字段,而且在时间的添加过程中不需要管理员手动的添加,只需点击时间输入框旁边的浏览按钮就可以进行时间的选择。
在备注框中还可以对员工的培训情况进行总体概括。
“职称评定”模块:此模块下设“管理职称评定”、“添加职称评定”和“修改职称评定”三个子模块,在管理和修改职工评定子模块中通过链接联系在一起,这样在管理职工评定时如果对其修改的话就可以点击界面中的“修改”链接直接切换到“修改职工评定”子模块界面中,也可以对其无用的职工信息进行删除操作。
界面如图2.8所示。
图2.8 “管理职称评定”子模块“奖惩管理”和“人员调动”模块设计的思想和上述模块的设计思想一样,也分别涉及到了相应的子模块。
这些子模块用来更好的完善系统的应用功能,使其设计更加人性化,便于管理和使用。
2.4 模块主要代码1.用户登录模块: login.jsp。
<%@page contentType="text/html;charset=gb2312"%><%@ include file="incoming/Common.jsp"%><%String loginmsg = request.getParameter("loginmsg");request.getSession(true);session.putValue("IsLogin","false");%><html><head><title><%=title%></title><META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=gb2312"><link href="css/style.css" rel="stylesheet" type="text/css"><script language="JavaScript">function check_input(){if( ername.value.length<1 || ername.value.length>16 ){alert("请输入用户名.")return false;}if( form.password.value.length<1 || form.password.value.length>16 ){alert("请输入密码.")return false;}}</script></head><body><p> </p><table width="320" height="197" border="2" align="center" cellpadding="2" cellspacing="2" bordercolor="#878080"><tr><td width="306" height="189"><div align="center"><table width="100%" border=0 cellpadding=0 cellspacing=0 background="images/login_bg.jpg" bgcolor="#FFFFFF" class=bg><form action=ChkLogin.jsp method=post name=form onSubmit="return check_input()"><tr><td width="402" height=40 align=left bgcolor="#CCCCCC"><div align="center"><a class="title1"><%=title%></a></div></td></tr><tr><td align=center valign=top><table width=210 border=0 cellspacing=0 cellpadding=0><input type=hidden name=url value=""><tr><td width="98" height=29><div align="right"><strong> 用户名: </strong> </div></td><td width="112" height=29><input name=username class=data size=16 maxlength=16 value=""></td></tr><tr><td height=29> <div align="right"><strong> 密码 : </strong> </div></td> <td height=29><input name=password type=password class=data size=16 maxlength=16></td></tr><tr><td height="41" colspan="2" align=right><div align="center"><font color=fe8c14></font><font color=fe8c14><input name="submit" type=submit value="登录" class=button><input name=reset type=reset class=button id="reset2"value="取消"></font></div><div align="center"><font color=fe8c14></font></div></td></tr> </table></td></tr><tr><td align="center" ><table width="75%" height="36%" cellpadding="0" cellspacing="0"> <tr><td height="5"><img src="images/login_line.gif" width="300" height="4"></td></tr><tr><td height="37" align="center"> <font color="#CC0000"><%if(loginmsg != null && loginmsg.equals("userwrong"))out.print("用户名或密码不正确.");else if(loginmsg != null && loginmsg.equals("loginfirst"))out.print("请先登录.");else if(loginmsg != null && loginmsg.equals("logout"))out.print("已经成功退出系统.");%></font></td></tr></table></td></tr></form></table></div></td></tr></table></body></html>2.登录后主界面:Header.jsp。