《人力资源管理系统》论文.docx

上传人:b****8 文档编号:30056826 上传时间:2023-08-04 格式:DOCX 页数:36 大小:1.01MB
下载 相关 举报
《人力资源管理系统》论文.docx_第1页
第1页 / 共36页
《人力资源管理系统》论文.docx_第2页
第2页 / 共36页
《人力资源管理系统》论文.docx_第3页
第3页 / 共36页
《人力资源管理系统》论文.docx_第4页
第4页 / 共36页
《人力资源管理系统》论文.docx_第5页
第5页 / 共36页
点击查看更多>>
下载资源
资源描述

《人力资源管理系统》论文.docx

《《人力资源管理系统》论文.docx》由会员分享,可在线阅读,更多相关《《人力资源管理系统》论文.docx(36页珍藏版)》请在冰豆网上搜索。

《人力资源管理系统》论文.docx

《人力资源管理系统》论文

 

人力资源管理系统

 

摘要

【摘要】

 随着计算机的普及和计算机科学技术的飞速发展,人们开始越来越多地利用计算机解决实际问题。

员工信息管理是企业信息管理的重要部分,面对大量的人事信息,采用人力处理即浪费时间、又浪费人力和物力,并且数据的准确性低。

因此,开发一个界面友好,易于操作的人力资源管理软件进行自动化处理变得十分重要,这正是本系统开发的目的和意义。

本文介绍了人事管理的开发过程。

论文详细介绍了从系统的需求分析、系统分析、概要设计、详细设计的整个开发过程。

【关键词】

目录

0引言

全球范围内的企业内部组织正在发生巨变,未来企业成功的关键的依靠企业人力资源,人才之争已经成为市场竞争中的核心内容之一,以人为本成为企业立足和发展的根本。

有效力管理企业的人力资源,为企业提供强有力的储备力量,使之成为企业发展的主动力。

通过人力资源的有效管理,掌握最新的、准确的企业人力资源信息,并对其进行复杂的统计与分析,从而充分发挥每个员工的潜能,为企业创造更大的价值。

网络化的今天,网络人力资源管理系统,使新的人力资源协作管理模式成为可能。

通过网络管理系统,专门的人力资源管理人员可以提高自身的工作效率,作好人力资源管理的协调工作,提高人力资源利用率;通过网络管理系统,员工可以直接管理自己的技能,有效地发现和挖掘自身的潜能,及时与自己的上级、下属、同事进行的沟通与交流,同心协作,积极为企业的发展与决策贡献力量。

通过网络人力资源管理系统对企业人力资源进行管理,使企业人力资源管理适应时代的发展要求,大大提高了企业的核心竟争力。

1系统分析

1.1需求分析

通过调查,要求系统需要有以下功能;

全面管理企业的员工信息。

管理企业人力资源管理的基础信息。

人才招聘管理及企业人才库管理功能。

企业人才培训的全程跟踪管理。

提供企业员工考勤管理。

设置企业员工薪酬管理。

提供系统用户管理功能。

1.2可行性分析

经济性

通过网络化的人力资源管理,大大的提高了企业人才的利用率,使之为企业创造了更大价值。

人才利用率的提高,增强了企业的核心竟争力,全面提升了企业的管理能力,从而企业适应了信息时代的网络化管理要求,。

技术性

通过网络化管理,增强了员工之间的沟通,更好的协调员工之间的协作关系;对员工考勤与薪酬管理更加的科学;全程跟踪员工的培训,通过信息的记录,更好的作出员工培训方案。

2总体设计

2.1项目规划

人力资源管理系统由人事管理、考勤管理、招聘管理、培训管理、系统管理5部分组成,规划系统功能模块如下:

人事管理模块:

该模块主要功能是对人事管理的基础信息、员工基本信息、合同信息等进行管理

招聘管理模块:

该模块主要是对企业招聘信息、企业的应聘信息、企业人才库进行管理。

培训管理模块:

该模块主要是对企业的培训计划、培训实施、培训材料等信息进行管理。

薪酬管理模块:

该模块主要功能是对管理员工薪酬信息进入管理。

系统管理模块:

该模块主要功能是对操作员信息、操作员操作权限进入管理。

2.2系统功能结构图

人力资源管理系统功能结构如图1所示。

图1人力资源管理系统功能结构图

3系统设计

3.1设计目标

本系统主要用于对企业中的“人”进行管理。

具体地讲,人力资源管理系统就是通过人力资源规划、员工考核、薪酬管理、员工激励、人才培训和开发等一系列手段来提高劳动生产率,最终达到发展目标的一种管理行为。

具体实现目标如下:

实现对员工信息进行全面管理的功能。

设置人力资源基础信息管理功能。

设置员工考勤管理功能模块。

员工薪酬信息管理。

实现企业员工培训信息全程跟踪的功能。

实现企业的招聘信息、应聘信息的管理功能。

企业人才库管理功能。

系统用户信息的管理。

系统最大限度地实现了易安装性、易维护性和易操作性。

系统运行稳定、安全可靠。

3.2开发及运行环境

硬件平台:

CPU:

P41.8GHz;

内存:

256MB以上。

软件平台:

操作系统:

WindowsXP/Windows2000;

数据库:

SQLServer2000;

开发工具包:

JDKVersion1.4.2;

JSP服务器:

Tomcat;

浏览器:

IE5.0,推荐使用IE6.0;

分辨率:

最佳效果1024*768像素。

3.3数据库设计

本系统采用SQLServer2000数据库,系统数据库名为PersonManage,数据库PersonManage中包括5个数据表。

关于数据库中的数据表请参见附录B

4系统总体架构

4.1模块功能介绍

人力资源管理系统是针对中小企业对现有员工和新聘员工的一个WEB管理平台。

主页功能模块主要包括以下功能模块:

人员管理:

主要包括浏览人员信息、添加人员信息、人员信息的添加、人员信息的修改。

招聘管理:

主要包括应聘人员信息的详细查看、删除、添加以及信息入库。

培训管理:

主要包括培训计划的详细信息、信息删除、添加培训计划和填写培训总结。

奖惩管理:

主要包括奖惩详细信息、删除详细信息、添加详细信息、修改详细信息。

薪金管理:

主要包括薪金的修改、添加、删除。

5用户操作功能模块

5.1用户操作文件总体架构

1.模块功能介绍

用户操作模块主要包括用户登录和人员管理模块,具体功能如下:

用户登录模块:

用于登录系统。

人员管理模块:

用于浏览、添加和修改人员信息。

5.2用户登陆模块设计

用户登录模块是用户进入主页面的入口,其运行结果如3所示。

图3用户登录模块运行结果

系统登陆是人力资源管理中最先使用的功能,因为用户登陆在数据库中使用的是人员表,人员表中有一个isadmin字段,是来标识是否是管理员的。

在登陆时要根据数据库的这个字段来判断此用户是否具有管理员的权限。

在网页里添写用户名和密码后点击【登陆】按钮,网页会访问一个URL,这个URL是“logon.do?

action=logon”,代码如下:

action=logon">

用户名:

密  码:

 

在这个表单的name的值是usersForm,它是Struts的ActoinForm的实现类在配置文件中的名字,如下所示:

action是Struts的Action的URL,他们在Struts的配置文件中都是已经配好的,如下所示:

在这个配置文件中,可以了解到如下信息:

根据name="userForm"可以找到与之相对应的ActionForm的实现类“com.bOS.bPRO_PersonManage.actionform.UsersForm”。

根据type="com.bOS.bPRO_PersonManage.action.UsersAction"可以找到处理用户数据的Action类。

根据可以了解,这个Action返回success时,页面会被转到manage.jsp文件,这就是登陆成功的页面。

如果当Action返回failed时,页面会被转到failed.jsp文件,这个文件是当用户登陆失败将要转到的页面。

Struts的Action的实现类是这个登陆页的核心内容,就来看看它是怎么实现的吧,如下所示:

packagecom.bOS.bPRO_PersonManage.action;

importjavax.servlet.http.HttpServletRequest;

importjavax.servlet.http.HttpServletResponse;

importnet.sf.hibernate.HibernateException;

importorg.apache.struts.action.Action;

importorg.apache.struts.action.ActionForm;

importorg.apache.struts.action.ActionForward;

importorg.apache.struts.action.ActionMapping;

importcom.bOS.bPRO_PersonManage.actionform.UsersForm;

importcom.bOS.bPRO_PersonManage.en.Users;

importcom.bOS.bPRO_PersonManage.service.UsersDao;

publicclassUsersActionextendsAction{

privateUsersDaodao=newUsersDao();

publicActionForwardexecute(ActionMappingmapping,ActionFormform,

HttpServletRequestrequest,HttpServletResponseresponse)throwsException{

Stringaction=request.getParameter("action");

//System.out.println("\nUsersAction*********************action="+action);

if(action==null||"".equals(action)){

returnmapping.findForward("error");

}elseif("listuser".equals(action)){

returnlistUser(mapping,form,request,response);

}elseif("adduser".equals(action)){

returnaddUsers(mapping,form,request,response);

}elseif("logon".equals(action)){

returnlogon(mapping,form,request,response);

}elseif("updateuser".equals(action)){

returnupdateUser(mapping,form,request,response);

}elseif("deleteuser".equals(action)){

returndeleteUser(mapping,form,request,response);

}elseif("selectuser".equals(action)){

returnselectUser(mapping,form,request,response);

}

returnmapping.findForward("error");

}

privateActionForwardselectUser(ActionMappingmapping,ActionFormform,HttpServletRequestrequest,HttpServletResponseresponse)throwsHibernateException{

Longid=newLong(request.getParameter("id"));

Usersu=dao.loadUsers(id.longValue());

request.setAttribute("user",u);

returnmapping.findForward("success");

}

privateActionForwarddeleteUser(ActionMappingmapping,ActionFormform,HttpServletRequestrequest,HttpServletResponseresponse)throwsHibernateException{

Longid=newLong(request.getParameter("id"));

Usersusers=newUsers();

users.setId(id);

dao.deleteUsers(users);

returnmapping.findForward("success");

}

privateActionForwardupdateUser(ActionMappingmapping,ActionFormform,HttpServletRequestrequest,HttpServletResponseresponse)throwsHibernateException{

UsersFormusersform=(UsersForm)form;

Usersusers=usersform.populate();

dao.updateUsers(users);

returnmapping.findForward("success");

}

privateActionForwardlogon(ActionMappingmapping,ActionFormform,HttpServletRequestrequest,HttpServletResponseresponse)throwsHibernateException{

UsersFormusersform=(UsersForm)form;

Usersusers=newUsers();

users.setUsername(usersform.getUsername());

users.setPassword(usersform.getPassword());

booleanflag=dao.logonUsers(users);

if(flag){

request.getSession().setAttribute("users",users);

returnmapping.findForward("success");

}else{

returnmapping.findForward("failed");

}

}

privateActionForwardaddUsers(ActionMappingmapping,ActionFormform,HttpServletRequestrequest,HttpServletResponseresponse)throwsHibernateException{

UsersFormusersform=(UsersForm)form;

Usersusers=usersform.populate();

dao.addUsers(users);

returnmapping.findForward("success");

}

privateActionForwardlistUser(ActionMappingmapping,ActionFormform,HttpServletRequestrequest,HttpServletResponseresponse)throwsHibernateException{

request.setAttribute("list",dao.listUser());

returnmapping.findForward("success");

}

Struts的Action实现类的execute()方法是最先被执行的,这个方法本身也没有具体的事务,而是根据action的参数不同执行相应的方法。

在登陆页里面可以找到有一个“action=logon”的字样,它的目的就是在这里做逻辑判断。

当action=logon时调用logon()方法。

logon()方法从UsersForm中得到用户提交的数据,然后在调用UsersDao()的logonUsers()方法。

并且把UsersForm转成Users类做为logonUsers()方法的参数。

调用后会返回一个boolean型的值。

如果为真,则返回“mapping.findForward("success");”否则返回“mapping.findForward("failed");”也就是当用户登陆成功后,返回给用户登陆成功的页面,登陆失败后返回用户一个登陆失败的页面。

那么UsersDao的logonUsers()方法是根据什么得到的返回值呢,现在就让我们看看这个方法,如下所示:

publicbooleanlogonUsers(Usersusers)throwsHibernateException{

Sessionsession=HibSessionFactory.currentSession();

Transactiontx=session.beginTransaction();

Queryquery=session

.createQuery("selectcount(*)fromUsersasuwhereu.username=:

nameandu.password=:

passwordandu.isadmin=:

isadmin");

query.setString("name",users.getUsername());

query.setString("password",users.getPassword());

query.setByte("isadmin",newByte("1").byteValue());

Listlist=null;

list=query.list();

mit();

HibSessionFactory.closeSession();

if(list!

=null){

Iteratorit=list.iterator();

if(it.hasNext()){

if(((Integer)it.next()).intValue()==1){

returntrue;

}

}

}

returnfalse;

}

这个方法先通过HibSessionFactory得到一个Hibernate的Session并且开始一个事务,Session再像使用一个欲编译似的命令似的东西,设定参数、提交事务和最后在关闭Session.。

得到一个List里面就存储着所有查询出的结果。

根据这个结果就可以判断出该用户是否有登陆的权根了,在返回true或者false。

就这样合法的用户就可以顺利的登陆了。

那刚才那些有些类似于欲编译的东西是什么呢,这些就是Hibernate特有的查询语言,被称为Hibernate查询语言(HQL),而它本身也就是使用的JDBC的欲编译技术。

5.3人员管理模块设计

人员管理模块主要包括浏览人员信息、添加人员信息、人员信息的添加、人员信息的修改。

此模块文件架构如图4所示。

各项管理工作都是在用户成功登陆后的管理页面进行的,在管理控制页面的左侧是各项的相关链接,右侧是操作平台。

管理控制页面右侧实际上是一个iframe,如下所示:

在左侧的链接中使用target="frame"就可以在这个iframe中打开新的链接了。

单击“添加人员信息”,即打开添加人员信息的页面如图4所示。

图4添加人员信息页面

添加人员信息的链接是这样的,如下所示:

添加人员信息

在Struts配置文件中,添加人员信息的链接没有使用ActionForm类,也没有使用Action的实现类,如下所示:

adduser.jsp文件,只是一个普通的JSP文件,但是它的表单元素都是与UsersForm相对应的,UsersForm如下所示:

packagecom.bOS.bPRO_PersonManage.actionform;

importcom.bOS.bUtil.DateUtil;

importjavax.servlet.http.HttpServletRequest;

importorg.apache.struts.action.ActionErrors;

importorg.apache.struts.action.ActionForm;

importorg.apache.struts.action.ActionMapping;

importcom.bOS.bPRO_PersonManage.en.Users;

publiccl

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 解决方案 > 学习计划

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1