基于jsp设计人事管理系统_第1页
基于jsp设计人事管理系统_第2页
基于jsp设计人事管理系统_第3页
基于jsp设计人事管理系统_第4页
基于jsp设计人事管理系统_第5页
已阅读5页,还剩13页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、 JSP课程设计第1章 课程设计目的与要求11.1 课程设计目的11.2 课程设计的实验环境11.3 课程设计的预备知识11.4 课程设计要求1第2章 课程设计内容22.1 系统设计22.2 数据库模型32.3 模块与功能设计42.4 模块主要代码7第3章 课程设计总结16参考文献17第1章 课程设计目的与要求1.1 课程设计目的本课程的课程设计实际是网络技术专业学生学习完JSP语言程序设计课程后,进行的一次全面的综合训练,其目的在于加深对JSP语言程序设计的基础理论和基本知识的理解,掌握运用JSP动态网页编程技术开发应用程序的基本方法。1.2 课程设计的实验环境硬件要求:能运行Windows

2、 9.X操作系统的微机系统。软件要求:JDK、tomcat6.0、SQL Server 2000。1.3 课程设计的预备知识熟悉JSP语言程序设计的基本知识及应用开发的编程思想。1.4 课程设计要求按课程设计指导书提供的课题,应根据下一节给出的基本需求独立完成各个方面的设计,标有“可选”的部分可根据设计时间的安排及工作量的大小适当选择。选用其他课题或不同的数据库系统,可以组成设计小组,分模块进行,共同协作完成一个课题的开发任务。要求书写详细的设计说明书,对复杂的代码段和程序段,应画出程序流程图。在界面设计中,设计好每个窗口的布局,有多个窗口时,按模块调用的方式画出窗口调用图,用手工画好报表和标

3、签样式,严禁相互抄袭。第2章 课程设计内容2.1系统功能分析 系统功能分析人事管理是企业管理的重要内容,如何管理好一个企业内部员工的信息,成为企业管理中的一个大的问题。此时,一个规范、自动的人事管理系统的使用显得尤为重要。根据人事管理的实际要求,结合人事信息管理的实际流程,“人事管理系统”可以满足以下要求:1能够掌握企业员工的基本信息,其中包括编号、姓名、性别、籍贯、民族、出生年月、政治面貌、专业、学历、家庭住址、婚姻状况、电话、身份证号等信息,除此之外还可以掌握每个员工的工作信息、调动信息、培训信息、奖惩信息等相关信息。2管理人员能够对本系统做相应的管理工作,可以对员工信息进行变动管理,如进

4、行数据添加、查找和修改等操作。而浏览者只可以查看其相应的内容,不可以进行其他操作。 系统功能模块设计由于人事管理系统主要面向的是小型企业的日常工作,所以设置的模块尽可能的满足企业的日常办公即可,其中设计的功能模块如图2.1所示。图2.1 功能模块图2.2 数据库模型 数据库需求分析人事管理系统主要包含以下数据项和数据结构:人员档案表:员工编号、姓名、性别、出生日期、籍贯、婚姻状况、政治面貌、学历、专业、毕业院校、毕业时间、公积金号、职务、职称等相关信息。培训管理表:员工编号、培训名称、培训内容、培训日期和培训单位。职称评定表:员工编号、职称、取得日期、取得方式、职务、起始日期、结束日期。奖惩管

5、理表:员工编号、职称、奖/惩、奖惩内容、奖惩原因、开始日期。人员调动表:员工编号、调动日期、调动前部门、调动后部门、调动前职务、调动后职务。 数据库概念结构设计数据库概念设计最常用的方法是实体-联系方法。此方法是用E-R图来描述的,此图是描述现实世界的有力工具,它可以很清晰地表示出实体之间的关系。人事管理系统涉及到了人员档案、培训管理、职称评定、奖惩管理和人员调动五个实体属性。在这里只介绍人员档案和培训管理两个实体的属性内容,其属性如下图所示。图2.2 人员档案属性图图2.3 培训管理属性图2.2.3 数据库逻辑结构设计本系统的逻辑设计是将人事管理系统的数据库概念结构转化为SQL 2000数据

6、库系统所支持的实际数据模型,即:数据库的逻辑结构。此系统共建立五个数据表,如人员档案表、培训管理表、职工评定表、奖惩管理表以及人员调动表。这里只对人员档案、培训管理两个数据表进行说明,具体情况如表所示:表2.1 人员档案表列名数据类型字段长度键是否为空员工编号Char7主键N姓 名Char20N性 别Bit2N出生日期Datetime8N籍 贯Char20Y婚姻状况Char8Y政治面貌Char20N学 历Char20N专 业Char20N毕业日期Datetime8N毕业院校Char20N公积金号Char8N行政级别Char10Y职 务Char20Y职 称Char10Y家庭住址Char20Y电

7、话Char15Y表2.2 培训管理表列名数据类型字段长度键是否为空员工编号Char7主键N培训名称Char20N培训内容Char20N培训日期Datetime8N培训单位Char20N2.3 模块与功能设计在人事管理系统的设计过程中,为了设计的简便可将其模块化,每个模块都分配相应的功能,这样就会大大减少设计人员的工作量。在此系统中,主要设计了人员档案管理、培训管理、职称评定、奖惩管理和人员调动管理几个应用模块。在系统启动时还有登陆模块设计,在进入系统时管理员需要输入用户名和密码,只有拥有管理权限的人员才可以对系统数据进行修改、添加等相关操作,而其他浏览者只能查看相应的基本信息。用户登陆模块如同

8、2.4所示:图2.4 用户登录只有具有管理员权限的用户才能登入系统,在登录之前需要用户输入用户名和密码,这样的设计是为防止其他人员随意的对系统进行误操作或更改。此时,当用户输入了正确的用户名和密码之后就可以登录到系统,否则系统会提示重新输入正确的用户名和密码。登录界面如图2.5所示。图2.5 登录界面在主操作界面中可以看到人员管理、培训管理、职称评定、奖惩管理和人员调动几个主要功能模块。在每个功能模块下还设计有对应的子模块,点击相应的链接就可以进入其子模块。如在“人员档案”模块中就分有管理人员档案、添加人员档案和修改人员档案三个子模块。每个子模块都有自己的详细的功能:“管理人员档案”子模块可以

9、总体浏览员工的基本信息,并且能够对其进入修改或删除操作;“添加人员档案”子模块功能是将员工的基本信息录入系统数据库中,界面如图2.6所示;“修改人员档案”子模块是将变动的人员信息进行更改。图2.6 “添加人员档案”子模块“培训管理”模块:在员工上岗之前各个企业都会对员工进行岗前培训,此模块中就涉及了多个字段,如员工编号、培训名称、培训内容以及培训时间等。该模块还分为“管理培训记录”、“添加培训记录”和“修改培训记录”三个子模块,如图2.7所示。图2.7 “修改培训记录”子模块在上一图中可以看到子模块中的各个数据字段,而且在时间的添加过程中不需要管理员手动的添加,只需点击时间输入框旁边的浏览按钮

10、就可以进行时间的选择。在备注框中还可以对员工的培训情况进行总体概括。“职称评定”模块:此模块下设“管理职称评定” 、“添加职称评定”和“修改职称评定”三个子模块,在管理和修改职工评定子模块中通过链接联系在一起,这样在管理职工评定时如果对其修改的话就可以点击界面中的“修改”链接直接切换到“修改职工评定”子模块界面中,也可以对其无用的职工信息进行删除操作。界面如图2.8所示。图2.8 “管理职称评定”子模块“奖惩管理”和“人员调动”模块设计的思想和上述模块的设计思想一样,也分别涉及到了相应的子模块。这些子模块用来更好的完善系统的应用功能,使其设计更加人性化,便于管理和使用。2.4 模块主要代码1.

11、用户登录模块: 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>

12、<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

13、check_input() if( form.username.value.length<1 | form.username.value.length>16 ) alert("请输入用户名.")return false;if( form.password.value.length<1 | form.password.value.length>16 ) alert("请输入密码.")return false;</script></head><body><p>&nbsp;<

14、/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"> <

15、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=

16、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=

17、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=""></t

18、d></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" cols

19、pan="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="取消&q

20、uot;></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&qu

21、ot; 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"><%i

22、f(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("已经成功退出系

23、统.");%></font></td></tr></table></td> </tr></form></table></div></td></tr></table></body></html>2.登录后主界面:Header.jsp。<% page contentType="text/html;charset=gb2312" %><body background="i

24、mages/bg.jpg"><TABLE bgColor="#336699" border=0 cellPadding=0 cellSpacing=1 width=780 align=CENTER><TR><TD align=middle background="images/in_top_bg.gif" height=10> </TD></TR></TABLE><TABLE align=center border=0 cellPadding=6 cellSpa

25、cing=1 width=780><TR bgcolor="#6699CC"><TD width="100%" align=center><table width="100%" height="11%" border="0" cellpadding="0" cellspacing="0"> <tr><td width="26%" rowspan="2">

26、;</td> <td width="51%" rowspan="2"><div align="center"><font class="title1">人事管理系统</font></div></td> <td width="23%">&nbsp;</td></tr> <tr><td height="30"><a id=t

27、ick2></a></td></tr> </table></TD></TR></TABLE><table width="780" border="0" align="center" cellpadding="0" cellspacing="0" bgcolor="#F4E193"> <tr><td width="780" height=&

28、quot;13" class="td3"><div align="center"><a href="index.jsp">首页</a></div></td> <td width="780"><div align="center"><a href="employee/Employee.jsp">人员档案</a></div></td>

29、 <td width="780"><div align="center"><a href="train/Train.jsp">培训管理</a></div></td> <td width="780"><div align="center"><a href="assess/Assess.jsp">职称评定</a></div></td> &

30、lt;td width="780"><div align="center"><a href="reward/Reward.jsp">奖惩管理</a></div></td> <td width="780"><div align="center"><a href="translate/Translate.jsp">人员调动</a></div></td

31、> </tr></table>3.添加人员档案界面:AddEmployee.jsp。<% page contentType="text/html;charset=gb2312" %><% include file="./incoming/Common.jsp"%><% include file="./Check.jsp"%><html><head><meta http-equiv="Content-Type" conte

32、nt="text/html; charset=gb2312"><META HTTP-EQUIV="Pragma" CONTENT="no-cache"><META HTTP-EQUIV="Cache-Control" CONTENT="no-cache"><title><%=title%></title><link rel="stylesheet" href="./css/style.css&q

33、uot; type="text/css" media="screen"><link rel="stylesheet" href="./css/calendar-win2k-1.css" type="text/css" media="screen"><script type="text/javascript" src="./js/calendar.js"></script><script t

34、ype="text/javascript" src="./js/calendar-en.js"></script><script type="text/javascript" src="./js/calendar-setup.js"></script></head><% include file="./incoming/Header.jsp"%><table width="780" border=&quo

35、t;0" align="center" cellpadding="0" cellspacing="0" bgcolor="#FFFFFF"> <tr> <td width="120" valign="top" background="./images/in_left_bg.gif"><% include file="EmployeeLeft.jsp"%></td> <

36、td width="660" align="center"><p align="center" class="title1">添加人员档案</p><form name="form1" method="post" action="AddEmployeeStep2.jsp" onsubmit="return check_input(this)"><table width="640&q

37、uot; height="513" border="1" align="center" cellpadding="3" cellspacing="0" bordercolor="#CCCCCC"> <tr> <td width="103" height="33"><div align="right"> 员工编号:</div></td> <td w

38、idth="176"><input name="employeeid" type="text" class="data" id="employee id"size="6" maxlength="6" >*</td> <td width="78" height="33"><div align="right">姓名:</div><

39、/td> <td width="249"><input name="username" type="text" class="data" id="username" size="8" maxlength="4" >*</td> </tr> <tr> <td height="33"><div align="right"> 性别:

40、</div></td> <td> <select name="sex" id="sex"> <option value="男" selected>男</option><option value="女">女</option> </select> *</td> </tr> <tr> <td height="33"><div align=&q

41、uot;right"> 出生日期: </div></td> <td><input name="birthday" type="text" class="data" id="birthday" value="1975-01-01" size="10" maxlength="8" readonly="true"> <input name="bir" t

42、ype="button" id="bir" value=".">*</td> <td><div align="right">籍贯: </div></td> <td> <input name="nativeplace" type="text" class="data" id="nativeplace" size="10" maxleng

43、th="10" >*</td> </tr> <tr> <td height="33"><div align="right">婚姻状况: </div></td> <td><select name="marriage" id="marriage"> <option value="未婚" selected>未婚</option> <opti

44、on value="已婚">已婚</option> <option value="丧偶">丧偶</option> <option value="离异">离异</option> </select>*</td> <td width="78"><div align="right">身份证号:</div></td> <td><input name=&

45、quot;identityid" type="text" class="data" id="identityid" size="18" maxlength="18" onKeyUp="value=value.replace(/d/g,'')"> *</td> </tr> <tr><td height="33"><div align="right">

46、; 政治面貌: </div></td> <td height="33"><select name="politics" id="politics"> <option value="党员" selected>党员</option> <option value="团员">团员</option><option value="群众">群众</option><o

47、ption value="其他">其他</option> </select>* </td> <td><div align="right">民族: </div></td> <td><input name="folk" type="text" class="data" id="folk" size="8" maxlength="4"

48、> *</td> </tr> <tr><td height="33"><div align="right">学历: </div></td> <td><select name="education" id="education"> <option value="初中">初中</option> <option value="高中">

49、高中</option> <option value="专科">专科</option> <option value="本科" selected>本科</option> <option value="硕士">硕士</option> <option value="博士">博士</option></select></td> <td width="78"><

50、div align="right">专业:</div></td> <td><input name="department" type="text" class="data" id="department" size="20" maxlength="20" ></td></tr> <tr><td height="33"><div a

51、lign="right">毕业日期:</div></td> <td><input name="graduatedate" type="text" class="data" id="graduatedate" value="1980-01-01" size="10" maxlength="8" readonly="true"> <input name=&quo

52、t;graduate" type="button" id="graduate" value="."></td> <td><div align="right">毕业院校: </div></td> <td><input name="university" type="text" class="data" id="university" size=&

53、quot;30" maxlength="30" ></td></tr> <tr><td height="33"><div align="right">公积金帐号:</div></td> <td><input name="accumulateid" type="text" class="data" id="accumulateid" size

54、="15" maxlength="15" onkeyup="value=value.replace(/d/g,'')">*</td> <td width="78"><div align="right">行政级别:</div></td> <td><select name="administrationlevel" id="administrationlevel"

55、;> <option value="科级">科级</option> <option value="处级">处级</option> <option value="部级">部级</option> <option value="其他">其他</option></select>*</td></tr> <tr><td height="33">&l

56、t;div align="right"> 职务:</div></td> <td><select name="duty" id="duty"> <option value="职员" selected>职员</option> <option value="主管">主管</option> <option value="总经理">总经理</option><

57、;/select>*</td> <td><div align="right">职称: </div></td> <td><select name="position" id="position"> <option value="工程师" selected>工程师</option> <option value="会计师">会计师</option> <opti

58、on value="经济师">经济师</option> <option value="其他">其他</option></select> *</td> </tr> <tr><td height="33"><div align="right"> 外语语种: </div></td> <td height="33"><select name=&quo

59、t;foreignlanguage" id="foreignlanguage"> <option value="英语" selected>英语</option> <option value="日语">日语</option> <option value="法语">法语</option> <option value="其他">其他</option> </select></

60、td> <td width="78"><div align="right">外语水平:</div></td> <td><select name="fllevel" id="fllevel"> <option value="三级" selected>三级</option> <option value="四级">四级</option> <option

61、 value="六级">六级</option> <option value="八级">八级</option> </select></td> </tr> <tr> <td height="33"><div align="right">计算机水平: </div></td> <td height="33"><select name="co

62、mputerlevel" id="computerlevel"> <option value="了解" selected>了解</option> <option value="熟悉">熟悉</option> <option value="精通">精通</option> </select></td> <td><div align="right">电话: </

63、div></td> <td><input name="phone" type="text" class="data" id="phone" size="13" maxlength="13" ></td> </tr> <tr><td width="78"><div align="right">家庭住址:</div></td> <td><input name="address" type=&q

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论