企业员工信息管理系统论文-毕业论文.doc
《企业员工信息管理系统论文-毕业论文.doc》由会员分享,可在线阅读,更多相关《企业员工信息管理系统论文-毕业论文.doc(30页珍藏版)》请在咨信网上搜索。
1 引言 1.1 开发背景 现代信息技术的发展,在改变着我们的生活方式的同时,也改变着我们的工作方式,使传统意义上的企业员工管理的形式和内涵都在发生着根本性的变化[1]。企业员工信息管理的内容也己经转变为对更为广泛的系统价值的追求。信息管理,如今已是一个热门话题,它已为许多企业所采用。在现代化的进程中,引入现代管理的思想,建立一套可面向企业单位的员工信息管理系统,也是十分必要的[2]。 本课题基于我国企业管理信息化建设现状,结合在实际工作中所遇到的问题和收获,对企业员工管理系统在设计开发等方面进行研究,重点研究系统开发中所采用的软硬件平台规范、数据库结构设计、开发工具的选择与使用,目的是从技术手段的角度阐述如何实现企业从传统经营管理模式向信息化管理模式转变的过程,以及企业员工管理系统在企业管理信息化中所起到的重要作用[3]。 1.2系统架构 本系统使用Sun公司的J2EE架构,并以STRUTS为框架,Hibernate作为持久化层,讨论了构件Web应用系统的MVC体系结构[4]。并探讨了设计模式与框架技术,设计并实现了基于STRUTS+Hibernate的企业员工信息管理系统,为以后的研究与实践打下了基础。 主要有以下几点: (1)系统采用较为流行的J2EE技术体系,具有良好的可伸缩性和跨平台性,为日后功能的扩展提供了良好的升级空间[5]。 (2)采用MVC模式struts架构设计,将系统的表示层、逻辑层和web表示层分离,便于日后的开发和维护[6]。 1.3系统目标 本课题设计并实现了一个企业员工信息管理系统,具体的实现目标是: (1)管理员界面 企业员工信息注册、企业员工信息管理、企业招聘信息发布、企业培训项目添加、企业培训项目管理、企业奖惩信息添加、企业奖惩信息查询、企业员工薪资录入、企业员工薪资查询、企业共享资料上传、企业共享资料管理、企业内部信息公告。 (2)企业员工界面 个人注册信息查询、个人登录密码变更、个人当月薪资查询、企业成长大事简介、企业招聘信息查询、企业培训项目查询、企业共享资料下载。 2 主要技术介绍 2.1 J2EE概述 J2EE是SUN公司定义的一个开放分布式企业级应用的规范[7]。它提供了一个多层次的分布式应用模型和一系列开发技术规范,与传统的互联网应用程序模型和一系列开发技术规范,与传统的互联网应用程序模型相比有着不可比拟的优势。J2EE技术是一个开发的、基于标准的开发和部署的平台,用于构建N层、基于Web、以服务端计算为核心、模块化企业应用。J2EE同时也是所有兼容J2EE标准的应用服务器产品的同一标识[8]。 J2EE是一种利用Java 2平台来简化企业解决方案的开发、部署和管理相关的复杂问题的体系结构。J2EE技术的基础就是核心Java平台,J2EE不仅巩固了标准版本中的许多优点,例如“编写一次、随意运行”的特性,同时还提供了对EJB、Java Servlets API、JSP以及XML技术的全面支持。其最终目的就是成为一个能够是企业开发者大幅缩短投放市场时间的体系结构[9]。 J2EE体系结构提供中间层集成框架用来满足无需太多费用而又需要高可用性、高可靠性以及可扩展性应用的需求。通过提供同意的开发平台,J2EE降低了开发开发多层的费用和复杂性,同时提供对现有应用程序集成强有力支持,完全支持Enterprise JavaBeans,有良好的向导支持打包和部署应用,添加目录支持,增强了安全几只,提高了性能[10]。 2.2 J2EE的优势 J2EE为搭建具有可伸缩性、灵活性、易维护性的商务系统提供了良好的机制: (1) 保留现存的IT资产:由于企业必须适应新的商业需求,利用已有的企业信息系统方面的投资,而不是重新制定全盘方案就变得很重要。由于基于J2EE平台的产品几乎能够在任何操作系统和硬件配置上运行,现有的操作系统和硬件也能被保留使用。 (2)高效的开发:J2EE允许公司把一些通用的、很繁琐的服务端任务交给中间供应商去完成。这样开发人员可以集中精力在如何创建商业逻辑上,相应地缩短了开发时间。 (3)支持异构环境:J2EE能够开发部署在异构环境中的可移植程序。基于J2EE的应用程序不依赖任何特定操作系统、中间件、硬件。因此设计合理的基于J2EE的程序只需要开发一次就可部署到各种平台。这在典型的异构企业计算环境中是十分关键的。 (4)可伸缩性:企业必须要选择一种服务器平台,这种平台应能提供极佳的可伸缩性去满足那些在他们系统上进行商业运作的大批新客户。基于J2EE平台的应用程序被部署到各种操作系统上。 2.3 MVC设计模式 MVC系统中的Model模型部分从概念上可以分为两类:系统的内部状态和改变系统状态的动作.Struts中的Model部分一般由JavaBean以及EJB组成[11]。在Struts架构中使用JavaBean来提供具体的业务逻辑,即”怎么做”,对于复杂的系统也可以使用EJB等组件来实现系统状态维护。这种业务逻辑的细分可以增强可以代码的可重用性。 Model模型View视图Controller控制器是软件工程中的一种软件架构模式。它把软件系统分为三个基本部分:Model模型View视图Controller控制器[12]。 模型视图控制器模式的目的是实现一种动态的程序设计,使后续对程序的修改和扩展简化,并且使程序某一部分的重复利用成为可能。专业人员可以通过自身的专长分组: 控制器Controller-负责转发请求,对请求进行处理。 Struts中的Controller控制器部分是通过专门的Servlet来实现的,该Servlet是一个Struts API中提供的ActionServlet类型的实例,ActionServlet类继承了javax.servlet.http.HttpServlet类,因此该类的实例可以和普通的Servlet一样工作,其作用是接收客户端浏览器的请求,然后选择执行相应的业务逻辑,再把响应结果送回到客户端。 Action对象是开发者定义的类(该类必须是Struts API中提供的Action类的子类)的实例。在继承该类的过程中开发者可以加入具体业务逻辑或调用业务逻辑模块。Action对象在进行了业务逻辑或调用业务逻辑模块。Action对象在进行了业务逻辑的处理以后会将应用程序流程转到合适的View组件,最终将响应送回浏览器客户端。Struts中提倡Action对象只用来决定”做什么”,相当于一个低层面的控制器,因此也可以将Action归纳为Controller的组成部分[13]。 视图View-界面设计人员进行图形设计。 模型Model-程序员编写程序应有的功能、数据库进行数据管理和数据库设计。 2.4 框架的选择 2.4.1 Struts简介 Struts的工作流程: 在web应用启动时就会加载初始化ActionServlet,ActionServlet从 struts-config.xml文件中读取配置信息,把它们存放到各种配置对象 当ActionServlet接收到一个客户请求时将执行如下流程。 (1)检索和用户请求匹配的ActionMapping实例,如果不存在,就返回请求路径无效信息; (2)如果ActionForm实例不存在,就创建一个ActionForm对象,把客户提交的表单数据保存到ActionForm对象中; (3)根据配置信息决定是否需要表单验证.如果需要验证,就调用ActionForm的validate()方法; (4)如果ActionForm的validate()方法返回null或返回一个不包含ActionMessage的ActuibErrors对象,就表示表单验证成功; (5)ActionServlet根据ActionMapping所包含的映射信息决定将请求转发给哪个Action,如果相应的 Action实例不存在,就先创建这个实例,然后调用Action的execute()方法; (6)Action的execute()方法返回一个ActionForward对象,ActionServlet在把客户请求转发给 ActionForward对象指向的JSP组件; (7)ActionForward对象指向JSP组件生成动态网页,返回给客户; 2.4.2 Hibernate简介 Hibernate是一种Java语言下的对象关系映射解决方案。它是使用GUN宽通用公共许可证发型的自由、开源的软件[14]。它为面向对象的领域模型到传统的关系型数据库的映射,提供了一个使用方便的框架。 它的设计目标是将软件开发人员从大量相同的数据库持久层相关编程工作中解放出来。无论是从设计草案还是从一个遗留数据库开始,开发人员都可以采用Hibernate。 Hiberbate不仅负责从Java类到数据库表的映射,还提供了面向对象的数据查询检索机制,从而极大地缩短的手动处理SQL和JDBC的开发时间。 2.4.3 Spring简介 Spring Framework 是一个开源的Java/Java EE全功能栈(full-stack)的应用程序框架。Spring Framework提供了一个简易的开发方式,这种开发方式,将避免那些可能致使底层代码变得繁杂混乱的大量的属性文件和帮助类。 Spring包含的关键特性如下: 1 非侵入式:所谓非侵入式是只Spring框架的API不会在业务逻辑上出现,也就是说我们的业务逻辑应该是纯净的,不能出现与业务逻辑无关的代码。首先针对应用而言,这样我们才能将业务逻辑从当前应用中剥离出来,从而在其他的应用中实现复用;其次针对框架而言,由于业务逻辑中没有Spring的API,所以业务逻辑也可以从Spring框架快速的移植到其他框架[15]。 2 容器:Spring提供容器功能,容器可以管理对象的生命周期,对象与对象之间的依赖关系。可以写一个配置文件(通常是xml文件),在上面定义对象的名字,是否是单例,以及设置与其他对象的依赖关系。那么在容器启动之后,这些对象就被实例化好了,直接去用就好了,而且依赖关系也建立好了。 3 IOC:控制反转,如果以前都是依赖于实现,那么现在反转依赖于抽象,它的核心思想就是要面向接口编程。 4 依赖注入:建立对象与对象之间依赖关系的实现,包括接口注入、构造注入、set注入,在Spring中只支持后两种。 5 AOP:面向方面编程,我们可以把日志、安全、事务管理等服务理解成一个“方面”,那么以前这些服务一直是直接写在业务逻辑的代码当中的,有这两点不好;首先业务逻辑不纯净,我们可以把这些服务剥离出来形成一个“方面”,以做到复用;然后将“方面”动态的插入到业务逻辑中让业务逻辑能够享受到此“方面的服务”。 3 系统开发工具及容器 3.1 开发工具 本系统使用的开发工具,后台java代码编写使用MyEclipse 2013 ,MyEclipse企业级工作平台是对Eclipse IDE的扩展,利用它我们可以在数据库和JavaEE的开发、发布,以及应用程序服务器的整合方面极大的提高工作效率。它是功能丰富的JavaEE集成开发环境,包括了完备的编码、调试、测试和发布功能,完整支持HTML,Struts,JSF,CSS,Javascript,SQL,Hibernate。 3.2 数据库的选择 ORACLE简介 ORACLE数据库系统是美国ORACLE公司(甲骨文)提供的以分布式数据库为核心的一组软件产品,是目前最流行的客户/服务器(CLIENT/SERVER)或B/S体系结构的数据库之一。比如SilverStream就是基于数据库的一种中间件。ORACLE数据库是目前世界上使用最为广泛的数据库管理系统,作为一个通用的数据库系统,它具有完整的数据管理功能;作为一个关系数据库,它是一个完备关系的产品;作为分布式数据库它实现了分布式处理功能。但它的所有知识,只要在一种机型上学习了ORACLE知识,便能在各种类型的机器上使用它。 Oracle数据库最新版本为Oracle Database 12c。Oracle数据库12c 引入了一个新的多承租方架构,使用该架构可轻松部署和管理数据库云。此外,一些创新特性可最大限度地提高资源使用率和灵活性,如Oracle Multitenant可快速整合多个数据库,而Automatic Data Optimization和Heat Map能以更高的密度压缩数据和对数据分层。这些独一无二的技术进步再加上在可用性、安全性和大数据支持方面的主要增强,使得Oracle数据库12c 成为私有云和公有云部署的理想平台。 本系统采用ORACLE10gXE版本。 3.3 JDK版本的选择 JDK是Sun公司针对Java开发员软件开发工具包。平台无关性是指Java能运行于不同的平台。Java引进虚拟机原理,并运行于虚拟机,实现不同平台的Java接口之间。使用Java编写的程序能在世界范围内共享。Java的数据类型与机器无关,Java虚拟机(Java Virtual Machine)是建立在硬件和操作系统之上,实现Java二进制代码的解释执行功能,提供了应用于不同平台的接口。 Java的编程类似C++,当Java舍弃了C++的指针对存储器地址的直接操作。程序运行时,内存由操作系统分配,这样可以避免病毒通过指针侵入系统。Java对程序提供了安全管理器,防止程序的非法访问。 Java吸取了C++面向对象的概念,将数据封装于类中,利用类的优点,实现了程序的简洁性和便于维护性。类的封装性、继承性等有关对象的特性,使程序代码只需一次编译、反复利用。程序员只需把精力用在类和接口的设计和应用上。 Java建立在扩展TCP/IP网络平台上。库函数提供了用HTTP和FTP协议传送和接受信息的方法。使得程序员使用网络上的文件和使用本机文件一样容易。 Java致力于检查程序在编译和运行时的错误。类型检查帮助检查出许多开发早期出现的错误。Java自己操纵内存减少了内存出错的可能性。 自从Java推出以来,JDK已经成为使用最广泛的Java SDK。 本系统采用JDK 1.6 版本。 3.4 容器 本系统页面采用JSP,所以对应的容器采用Apache Tomcat7.0。 既然JSP/Servlet,那么它当然是不能直接运行的,必须把它放到某种运行环境中,它才能发挥它的作用。这个环境就是我们讲的容器。容器也是Java程序,它主要功能除了为Servlet提供环境,还有更重要的,就是提供网络传输协议与java程序的相互转换。客户端想服务器发送数据,遵循的是HTTP协议的数据格式。在客户端和服务器端,可能存在这不同的编程语言编写的程序,比如java,C++的等等。各种语言都有自己用于处理HTTP协议数据的方法(类),为了使用java提供的各种HTTP处理相关的类,必须将HTTP协议下的数据做一定的转换,转换成一些java object,这样才能使用java的方法进行数据处理。同理,当这些处理完成,又需要将这些java object转换回HTTP协议下的数据,反馈给客户端 (JSP/Servlet当然存在于服务器端)。JSP/Servlet容器就扮演了完成这个双向转换的角色。 Tomcat简介 Tomcat是由Apache软件基金会下属的Jakarta项目开发的一个Servlet容器,按照Sun Microsystems提供的技术规范,实现了对Servlet和JavaServer Page(JSP)的支持,并且提供了作为Web服务器的一些特有功能,如Tomcat管理和控制平台、安全域管理和Tomcat等。由于Tomcat本身也内含一个HTTP服务器,它也可以被视作一个单独的Web服务器。但是,不能将Tomcat和Apache Web服务器混淆,Apache Web Server是一个用C语言实现的HTTP web server;这两个HTTP web server 不是捆绑在一起的。Apache Tomcat 包含了一个配置管理工具,也可以通过编辑XML格式的配置文件来进行配置。 4 系统总体设计 4.1 系统功能分析 功能需求定义了开发人员必须实现的软件功能,使得用户能完成他们的任务,从而满足业务需求。参照业务需求分析的结果对每个业务进行细化,从而得到系统的功能模块。 根据一般公司的人力资源管理业务需求,系统应该具有以下功能: (1) 登录功能:为了防止非法用户的访问及信息保密性要求,登录模块应根据用户类型对其操作权限进行了限制。 (2) 企业员工信息管理:应实现企业员工信息的增加、删除、修改等操作。 (3) 招聘管理:管理员可以发布、删除招聘信息。 (4) 业务管理:根据具体的情况设置人员业务培训,可修改、删除、添加培训信息,为员工的升迁提供科学的依据。 (5) 奖惩管理:实现对奖惩信息的增加、删除等操作,为薪资、升迁等提供依据。 (6) 薪资管理:实现对员工工资的录入、查询等。 (7) 企业员工登录模块:该模块强调员工自助服务,如对个人档案、薪资等信息的查询、密码修改等操作。 (8) 系统管理模块:对该系统用户进行管理(增加、删除等)。 4.2 系统架构设计 本系统编码采用MVC分层结构设计。工程主要分为action包,Dao包和bean包。 action包:主要是放置Struts的Action java类,用来控制流程跳转、操纵model层、从model里面取数据呈现给表示层。 dao包:主要放置负责与数据库打交道的java类,所有类皆继承自一个HirbernateDao。该层封装了数据的增、删、改、查操作。 bean包:主要是放置实体bean java类,用来表示实体,并且映射至数据库对应的表,负责想view层提供数据。 5 详细设计 5.1 数据库 5.1.1 数据库设计 一个软件产品,数据库设计的好坏决定这软件的开发维护和运行容易程度。如果把企业的数据比作生命所必需的血液,那么数据库的设计就是应用中最重要的一部分。整个系统的操作实际上就是操作数据库,所以,数据库的设计方式决定这系统的好坏。 5.1.2 数据表 本系统一共建立了9张表。 (1)用户信息表:用来存储用户信息,表结构见表5.1 表5.1 用户信息表 字段号 字段名称 字段类型 字段大小 索引 字段说明 1 id number 4 主键 编号 2 accountno varchar2 15 非空、唯一 用户帐号 3 password varchar2 50 非空 用户密码 4 type varchar2 1 非空 用户类型 5 status varchar2 1 是否注销 (2)企业员工信息表:用来存储职工档案信息,表结构见表5.2 表5.2 企业员工信息表 字段号 字段名称 字段类型 字段大小 索引 字段说明 1 id number 4 主键 编号 2 name varchar2 20 非空 员工姓名 3 pinyin varchar2 20 姓名拼音 4 gender varchar2 1 非空 员工性别 5 birthspace varchar2 50 员工籍贯 6 nation varchar2 20 员工民族 7 birthtime varchar2 30 出生日期 续表5.2 字段号 字段名称 字段类型 字段大小 索引 字段说明 8 title varchar2 25 职称 9 deptid number 4 外键 部门id 10 zwid number 4 外键 职务id 11 cellphone varchar2 20 手机 12 wphone varchar2 20 办公电话 13 fphone varchar2 20 家庭电话 14 email varchar2 20 电子邮箱 15 zz varchar2 2 政治面貌 16 health varchar2 25 健康状况 17 profession varchar2 20 专业 18 xl varchar2 15 学历 19 marry varchar2 1 婚姻状况 20 sfz varchar2 18 非空 身份证号 21 address varchar2 50 现居地址 22 bianhao varchar2 15 非空、唯一 员工编号 23 icon varchar2 200 照片路径 24 Luru_date date 录入日期 25 modifydate date 更改日期 (3) 招聘信息表:用来存储发布的招聘信息,表结构见表5.3 表5.3 招聘信息表 字段号 字段名称 字段类型 字段大小 索引 字段说明 1 id number 4 主键 编号 2 content varchar2 200 非空 招聘内容 3 fbdate date 发布日期 (4) 职务信息表:用来存储各职务信息,表结构见表5.4 表5.4 职务信息表 字段号 字段名称 字段类型 字段大小 索引 字段说明 1 id number 4 主键 编号 2 name varchar2 20 非空 职位名称 3 dept_id number 4 外键 部门id (5) 部门信息表:用来存储部门信息,表结构见表5.5 表5.5 部门信息表 字段号 字段名称 字段类型 字段大小 索引 字段说明 1 id number 4 主键 编号 2 name varchar2 15 非空、唯一 部门名 (6) 业务信息表:用来存储企业员工业务培训信息,表结构见表5.6 表5.6 业务信息表 字段号 字段名称 字段类型 字段大小 索引 字段说明 1 id number 4 主键 编号 2 tname varchar2 15 非空 培训名称 3 tgoal varchar2 1 非空 培训目标 4 tjc number 4 培训教材 5 tmember varchar2 25 非空 参加人员 6 kdate varchar2 20 开始日期 7 jdate varchar2 20 结束日期 8 tnumber number 4 参加人数 9 teacher varchar2 20 培训讲师 10 jibie varchar2 10 培训级别 11 yx varchar2 5 影响程度 12 fbdate date 发布日期 (7) 奖惩信息表:用来存储企业员工奖惩信息,表结构见表5.7 表5.7 奖惩信息表 字段号 字段名称 字段类型 字段大小 索引 字段说明 1 id number 4 主键 编号 2 name varchar2 30 非空 奖惩名称 3 reason varchar2 50 奖惩原因 4 member varchar2 50 奖惩人员 5 descr varchar2 200 奖惩描述 6 fbdate date 发布日期 7 fbMember varchar2 15 发布人员 (8) 薪资信息表:用来存储企业员工薪资信息,表结构见表5.8 表5.8 薪资信息表 字段号 字段名称 字段类型 字段大小 索引 字段说明 1 id number 4 主键 编号 2 ebianhao varchar2 15 外键 员工编号 3 smonth varchar2 8 非空 所属月份 4 jsalary number 6 非空 基本工资 5 zsalary number 4 住房补助 6 esalary varchar2 4 额外补助 7 ssalary varchar2 5 税收金额 8 qsalary number 3 全额奖金 9 fsalary number 3 罚款金额 10 fbdate date 发布日期 (9) 文件信息表:用来存储所上传文件路径,表结构见表5.9 表5.9 文件信息表 字段号 字段名称 字段类型 字段大小 索引 字段说明 1 id number 4 主键 编号 2 loadfile varchar2 50 非空 上传文件名 3 update date 上传日期 5.2 Web层的设计 这一层主要是作为用户访问系统的界面,提供Web网页服务器,同时与后台服务器连接,将客户端的请求信息传递到业务层,同时将后台反馈的信息传送到客户端。视图部分采用JSP,控制器部分交由Struts的action直接和实体bean交互以操作数据库。 5.2.1 JSP简介 JSP((全称JavaServer Pages)是由Sun Microsystems公司倡导和许多冻死参与共同建立的一种是软件开发者可以响应客户端请求,而动态 生成HTML、XML或者其他格式文档的Web网页的技术标准。JSP技术是以Java语言作为脚本语言的,JSP网页为整个服务器端的Java库单元提供了一个接口来服务于HTTP的应用程序。 JSP使Java代码和特定的预定义动作可以嵌入到静态页面中。JSP句法增加了被称为JSP动作的XML标签,它们用来调用内建功能。另外,可以创建JSP标签库,然后像使用标准HTML或XML标签一样使用它们。标签库提供了一种和平台无关的扩展服务器性能的方法。 JSP被JSP编译器编译成Java Servlets。一个JSP编译成JAVA代码写的servlet然后再由JAVA编译器来编译成机器码,也可以直接编译成二进制码。 5.3 EJB层的设计 5.3.1 实体Bean的设计 实体Bean是根据数据库之中的表来建立的其中的相关属性/成员变量对应数据库表中的各种字段。以本工程的一个实体Bean Employee为例,各种操作需要调用Employee到实体Bean,Employee实体Bean的核心代码如下: public class MemberDaoImpl implements IMemberDao{ public void addEmployee(Employee employee) throws Exception { Session session=HibernateSessionFactory.currentSession(); session.saveOrUpdate(employee); } public List findEmployee(String accountno, String gender,Long deptid) throws Exception { Session session=HibernateSessionFactory.currentSession(); StringBuffer sb=new StringBuffer(); sb.append("from Employee where 1=1"); if(accountno!=null&&accountno.length()!=0) sb.append(" and bianhao='"+accountno+"'"); if(gender!=null) sb.append(" and gender='"+gender+"'"); if(deptid!=0){ sb.append(" and deptid="+deptid); } System.out.println(sb.toString()); Query query=session.createQuery(sb.toString()); return query.list(); } public Employee QueryEmployee(Long id) throws Exception { Session session=HibernateSessionFactory.currentSession(); Query query=session.createQuery("from Employee where id=?"); query.setLong(0,id); return (Employee) query.uniqueResult(); } 5.3.2 数据库映射与连接 本系统使用的是Hibernate将对象持久化,让传统的关系型数据库与实体映射成为符合面向对象编程思想的数据处理方式。采用Hibernate,实体与数据库映射只需要配置相应的XML文件即可,跟代码完全分离。而采用Spring,可以将 Hibernate的事务交给Spring全权处理,方便了许多。 (1) 界面:在本项目中指JSP页面,在具体的时序图中被实际的页面文件所替代。 (2) ActionServlet:指Struts中的ActionServlet,是特指,在具体的时序图中也不会改变。 (3) Action:指Struts中的Action的具体实现类,在具体的时序图中被实际的类所替代。其作为控制器的一部份存在。 (4) ActionForm:指Struts中的ActionForm的具体实现类,在具体的时序图中被实际的类所替代。其在界面和Action之间传递界面数据。 (5) BO:业务逻辑操作对象(Bussiness Object),执行功能的业务逻辑职责,在具体的时序图中被实际的类所替代。如果某个功能没有业务逻辑处理,此类可以不在时序图中存在。 (6) DAO:为数据操作类处理相应的数据库操作。 (7) HibernateDataSource:数据操作实现类,用来执行实际的数据库访问。 5.4 企业员工信息管理系统的实现 5.4.1 用户登录 用户先访问index.jsp主页面,转到login.jsp进行登录,用户输入账号、密码提交,先进入JavaScript中进行简单的非空验证,后进入LoginAction,调用service层的login方法进行判断登录。 用户登录界面如图5.1: 图5.1 用户登录界面 用户登录,系统会根据用户的类型,跳转到相应的jsp页面。 用户登录代码如下: public class LoginAction extends Action { public ActionForward execute(ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response) { LoginForm loginForm = (LoginForm) form; IMemberService service=(IMemberService) BeanFactory.getBean("memberService"); String accountno=loginForm.getAccountno(); String password=MD5.getMD5Str(loginForm.getPassword()); String type=loginForm.getType(); try{ } } 5.4.2 管理员界面 根据用户类型的不同,用户界面分为管理员界面和公司员工界面。该设计主要是为了区分用户权限,更好的实现系统的安全性和信息的保密性。 管理员权限:企业员工信息注册、企业员工信息管理、企业招聘信息发布、企业培训项目添加、企业培训项目管理、企业奖惩信息添加、企业奖惩信息查询、企业员工薪资录入、企业员工薪资查询、企业共享资料上传、企业共享资料管理、企业内部信息公告。 管理员登录界面 如图5.2所示: 图5.2 管理员登录界面 以下jsp是管理员界面的代码: <%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%> <%@taglib uri=" prefix="c"%> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html> <head> <title>页面右部</title> <script type="text/javascript"> lstart=200 loop=true speed=350 pr_step=5 function makeObj(obj,nest){ nest=(!nest) ? '':'document.'+nest+'.' this.css=(document.layers) ?eval(nest+'document.'+obj):eval(obj+'.style') this.scrollHeight=document.layers?this.css.document.height:eval(obj+'.offsetHeight') this.up=goUp this.obj = obj + "Object" eval(this.obj + "=this") return this } function goUp(speed){ if(parseInt(this.css.top)>-this.scrollHeight){ this.css.top=parseInt(this.css.top)-pr_step setTimeout(this.obj+".up("+speed+")",speed) }else if(loop) { this.css.top=lstart eval(this.obj+".up("+speed+")") } } function slideInit(){ oSlide=makeObj('divNews','divCont') oSlide.css.top=lstart oSlide.up(speed) } onload=slideInit </script> <body backgrou- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 企业 员工 信息管理 系统 论文 毕业论文
咨信网温馨提示:
1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前自行私信或留言给上传者【可****】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时私信或留言给本站上传会员【可****】,需本站解决可联系【 微信客服】、【 QQ客服】,若有其他问题请点击或扫码反馈【 服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【 版权申诉】”(推荐),意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:4008-655-100;投诉/维权电话:4009-655-100。
1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前自行私信或留言给上传者【可****】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时私信或留言给本站上传会员【可****】,需本站解决可联系【 微信客服】、【 QQ客服】,若有其他问题请点击或扫码反馈【 服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【 版权申诉】”(推荐),意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:4008-655-100;投诉/维权电话:4009-655-100。
关于本文