搜索
您的当前位置:首页正文

基于J2EE的企业人事管理系统的设计

来源:欧得旅游网
・学术论坛・ 基于J2EE的企业人事管理系统的设计 宁 勇 王仕仲 (邵阳广播电视大学 湖南邵阳422000) 摘要:文章介绍以JDK为开发工具,E(SQL Server 2005为后台数据库,实现员工信息管理、奖惩管理、薪金管理、培训管 理、招聘管理为主要功能的人事管理系统。 关键词:J2EE 企业人事管理系统 数据库模型 中图分类号:TP315 文献标识码:A 文章编号:1 007--9416(2011)01—01 05--04 前言 系统采用E—R模型的数据分析方法,规 考勤信息实体、员工工作评价信息实体、员 针对目前许多单位仍然使用传统人工 划的实体主要有:员工基本信息实体、员工 工工资信息实体。员工基本信息实体E—R图 方式管理文件档案,效率低、保密性差,查 找、更新和维护困难的现状,开发一个基于J 2EE架构的人事信息管理系统,用于企业对 本公司人员信息的数据记录、信息查询、决 策分析。软件运行于企业内部局域网上,方 便、灵活、安全,大大提高了企业人才的利用 率,全面提升了企业的管理能力,完全适应 信息时代的网络化管理要求。 1、系统总体设计 企业人事管理系统由人员管理、奖惩管 理、招聘管理、培训信息管理、薪金信息管理 图2员工基本信息实体E-R图 组成,系统总体架构图如图1所示。 企业人事曹埋 绩 图1系统总体架构图 Digital technology and application数字技术与应用 1 O5 ・学术论坛・  tgresSQL等类型的数据 用户表如表5所示。如图2所示,员工工资信息实体E—R图如图3 QL Server和Pos库,系统采用SQL Server2005来存储数据, 所示。 2 2系统数据库设计 培训信息表如表1所示,奖惩表如表2所示, 3、系统功能和代码设计 系统主要由人事管理、考勤管理、招聘 管理、培训管理、薪酬管理、系统管理等功能 模块构成。 Java ̄访问诸 ̄Oracle,Sybase,MS S 应聘信息表如表3所示,薪金表如表4所示, 3.1人员管理 人员管理包括浏览人员信息和添加人 员信息两部分,实现人员的系统化管理0弱 加人员信息的主要代码如下: Public void addUsers(Users users ̄h rows HibernateException{ Usets.setCreatetime(new java.uti1.D ate()); Session session=session.beginTransa 图3员工工资信息实体E—R图 表1培训信息表 字段名 Id Name Purpose begintime endtime datum teacher student createtime educate efflect SUmmarIZe 数据类型 int varchar varchar datetime datetime varchar varchar varchar daNime bit varchar varchar 长度 6 1OO 500 8 8 2000 50 50 8 1 500 2000 表2奖惩表 字段名 jd name reaS0n explain createtime 数据类型 lnt varchar varchar varchar datetime 长度 6 2000 50 50 8 主键否 主键 主键否 主键 ction(); 描述 惟一标识 培训名称 培训目的 开始时间 结束时间 培训材料 讲师 培训人员 创建时间 是否培训过 培训效果 培训总结 描述 惟一标识 奖惩名称 奖惩原因 奖惩说明 添加时间 表3应聘信息表 字段名 id name sex age job specialty 数据类型 lnt varchar bit lnt varchar Varchar 长度 6 50 1 4 50 50 主键否 主键 描述 惟一标识 应聘者名称 性别 年龄 应聘职位 所学专业 experience studyeffort varchar varchar 50 50 工作经验 学历 school te1 email varchar varehar varchar 50 50 50 毕业学校 联系电话 邮件地址 createtlme content isstock datetime next bit 8 16 1 申请时问 详细经历 聘任否 1 06 数字技术与应用Digital technology and application ・学术论坛・ Transaction tx=session.beginTransa nMapping mapping,ActionForm form, 培训管理主要包括添加培训计划、浏 览培训计划和查看培训总结模块,主要代 Private ActionForward addEducate ction(); HttpServletRequest request,HttpServlet Session.save(users); tx.comimit(); HibSe ̄ionFactory.leoseSession(); } 在“人员姓名”、“登录密码”、“出生日 Response response)throws HibemateExce 码如下: ption{ JobForm jobform=(JobForm)form; Job job obform.populate(); (ActionMapping mapping,ActionForm f oym,HttpServleRequest request,HttpSer Dao.addJob(job); vletResponse response)throws Hibemate 期”和“人员简介”的文本框中输人相关内 改和删除等操作。删除人员信息主要代码 如下: Return mapping.ifndForward(“SUCC Excepion{ 容,确认后完成添加操作,同时还可实现修 esS”); } Private ActionForward listJob(Actio nMapping mapping,ActionForm form, HttpServletRequest request.HttpServlet EducateForm educateForm=(Educate Form)form; Educate e=educateFonn.populate(); Public void deleteUsers(Users users) Dao.addgducate(e); Return mapping.ifndForward(“SUCC throws HibemateExceptionO{ Session session=HibSessionFactory.C Response response)throws HibernateExce ess”); piOn{ String isstock=request.getParameter urrentSession(); Transaction tx=session.beginTransa } Private ActionForward detailEducate ction(); Session.delete(users); tx.commit(); HibSessionFactory.closeSession(); (“isstock”); (ActionlVlapping mapping,ActionForm f orm,HttpServletRequest request,HttpSer If(isstock==nullll””.equals(isstock)]l” 0”.quales(isstock){ vletResponse response)throws Hiberante Long id=new Long(request.getPara request.etsAttribute(“list”,dao.1istJo Excepion{ } b(new Byte(“0”).byteValue0)); }ele{s Request.setAttribute(“list”,dao.1istJ 3.2招聘管理 招聘管理主要包括添加应聘信息、浏览 龄、所学专业、学历、电话、职位、工作经验、 毕业学校、Email和详细经历的文本框中输 记和浏览,主要代码如下: Private ActionForward addjob(Actio meter(“id”).toString0); Educate e=new Educate(); 应聘信息和浏览人才库等功能。在姓名、年 ob(new Byte(“1”).byteValueO))); E=dao.1oadEducate(id.1ongValue0); Request.setAttribute(“educate”,e); } Return mapping.fndForward(‘i‘SUCC } Return mapping.findForward(‘‘slice ess”); J 入相关的内容,确认后完成招聘管理信息登 ess”); 3.3培训管理 表4薪金表 Private ActionFoi-ward deleteEd ̄ ̄cate 字段名 id name basic eat house duty scot 数据类型 int varchar f10at lf0at float lfoat lfoat 长度 6 50 8 8 8 8 8 主键否 主键 描述 惟一标识 薪金名称 基本工资 饭补 房补 全勤奖 赋税 punishment other granttime totalize float lfoat datetime lfoat 8 8 8 8 罚款 额外补助 发放时间 总计 表5用户表 字段名 id USename password SeX birthdaY 数据类型 im varchar varchar bit datetime 长度 6 50 50 l 8 主键否 主键 描述 惟一标识 用户名 密码 性别 生日 createtime isadmin content datetime bit varchar 8 l 2000 注册时间 是否为管理员 内容 Digital technology and application数字技术与应用 1 07 ・学术论坛・  (ActionMapping mapping,ActionForm f ess”);orm,HttpServletRequest request,HttpSer me”).getBytes(”ISO8859—1”),”GBK”o } 4.3安全性问题 基于安全性的考虑,在用户登陆进入 verResponse response)throws HibernateE 4 设计难点 4.1系统设计主要技术 xception{ Long id=new Long(request.getPara meter(“id”).toString0); 的页面中增加判断语句,非法进入则自动 其中Check.jsp中的代 在WEB系统中,用户往往要对数据进 跳转到登录界面, 行频繁的操作,如增加、删除、修改数据记 码如下:<%if((String)session.getValue(”IsLo 录。系统基于J2EE框架实现,使用Hiberrmt Educate e=new Educate(); e.etsld(id); e2.1+Struts1.1作为主体技术,通过Hil ̄rn gin”)!=”true”) ate来处理系统与数据库之间的交互,Struts 来处理用户与系统之间的交互。使用Hiber nate ̄#,除了配置文件,还要有映像文件和可 { String loginmsg=”loginfirst”; dao.deleteEducate(e); return mapgng.ifndForward(‘'suo:ess”); } response.sendRedirect(”../login.js 3.4奖惩管理和薪金管理 持久化类,这样在程序中可以通过Hibemat p?loginmsg=“+loginmsg); }%> 直接对持久化类操作,省去对数据表中 奖惩管理主要包括添加奖惩信息和浏 eAPI览奖惩信息模块,薪金管理主要包括添加、 数据的操作,一个持久化类对应一个映像文 删除和浏览薪金数据模块,主要代码如下: Private ActionForward addStipend 5 结语 系统使用JDK Version 1.4.2开发工具 er2 ̄5作为后台数据库,完成了员工基本信 件,同时一个映像文件又对应一个数据表。 Hibernate让一个普通的java类变成一个持 包是,Tomcat作为服务器平台,以SQL Serv 心在于它的Action,通过Action对页面实现 息管理、招聘管理、培训管理、薪金管理、奖 通过set和get方法访问。Stutrs的核 (ActionMapping mapping,ActionForm f 久化类,orm,HttpServletRequest request,HttpSer vletResponse response)throws Hibemate 逻辑跳转。 Exception{ StipendForm stipendForm=(Stipend Form)form, 惩管理等几个主要功能功能,并在传统的企 业人事管理系统基础上实现了网络功能,可 4.2中文乱码问题 显示问题解决方案: 系统设计过程中/SP和数据库中的中文 大大提高人事管理的效率。 (1)在首页添加代码<%@page conten 参考文献 tType=”text/html; charset=gb23 1 2 f > Stipend s=stipendForm.populate()i dao.addStipend(s); return mapping.ifndForward(‘‘SUCC ̄ SS”); …1陈克力.SQL Server2005编程基础靖华 大学出版社,2008. (2)在页首添加代码<%@page page 【21 Roger s.Pressman著.郑人杰,马素霞,白 晓颖等译,软件工程实践者的研究方法 机械工业出版社,2007. } Private ActionForward deleteStipend Encoding=”GB23i2 %> (3)针对JSP与数据库之间的中文转化 换,如:Stirng username=new (ActiorLMapping mapping,ActionForm f 问题,在每次传参数的前面都进行编码转 【3】刘中兵.开发者突击Java Web主流框架 orm,HttpServletRequest request,HttpSer 整合开发[J2EE+Struts+Hibernate+Sprin 翻.电子工业出版社,2008. vletResponse response)throws Hierate bException{ String(request.getParameter(”userna Long id=new Long(request.getPara meter(“id”).toString0); Stipend s=new Stipend(); S.setld(id); dao.deleteStipend(s); return mapping.ifndForward(‘‘succe SS” } Private ActionForward detailStipend (ActionMapping mapping,ActionForm f orm,HttpServletRequest request,HttpSer vletResponse rsponsee)throws Hibernate Exception{ Long id=new Long(request.getPara meter(“id”)); Stipend s=dao.1oadStipend(id.1ong Value()); Request.etAtstribute(“stipend”,S); Return mapping.findForward(“SLICe 1 08 数字技术与应用Digital technology and application 

因篇幅问题不能全部显示,请点此查看更多更全内容

Top