软件工程毕业设计论文_第1页
软件工程毕业设计论文_第2页
软件工程毕业设计论文_第3页
软件工程毕业设计论文_第4页
软件工程毕业设计论文_第5页
已阅读5页,还剩50页未读 继续免费阅读

下载本文档

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

文档简介

摘要人力资源管理系统是现代企业的核心业务系统之一,人力资源管理的状况和水平对企业的运作和效率至关重要。现代企业人力资源管理的内容非常丰富,可能包含档案管理、合同管理、薪酬管理、招聘管理、绩效管理、系统管理等很多部分。在本次毕业设计中,我们模拟实现了一家现代企业的人力资源管理系统中的部分子系统。由于现代企业都拥有功能完善的企业内部网,所以该系统的体系结构采用了以SSH1架为基础的Java企业级开发模式。SSHlf架作为目前最流行和最成熟的Java企业级开发技术,在软件系统的效率、可用性、可维护性等方面提供了优秀的支持,并集成了当前JavaWeb开发方面的最好技术。本人在该系统中主要承担系统管理子系统的开发。该子系统包括用户注册、登录、用户管理、权限管理、用户组管理等模块。本文首先简要介绍人力资源管理系统的一些应用背景和应用状况;其次介绍了该项目开发所采用的平台、开发工具以及开发环境;本文重点描述了该系统开发的流程,从项目策划、需求分析、系统设计、编码与实现等阶段详细介绍了系统的开发过程、实现方案和策略等。关键词:人力资源管理;系统管理;SSHlf架;JavaWeb开发;面向对象建模AbstractHumanresourcemanagementsystemisoneofthecorebusinesssystemofmodernenterprises,thestatusandlevelofhumanresourcesmanagementisveryimportantfortherunningefficiencyofaenterprise.Thecontentofamodernenterprisehumanresourcesmanagementisveryrich,itmaycontainarchivesmanagement,contractmanagement,compensationmanagement,recruitmentmanagement,performancemanagement,systemmanagementandsoonmanyparts.Inthisgraduationdesign,wesimulatetheimplementationofamodernenterprisehumanresourcesmanagementsystemofsomesubsystems.DuetothefunctionofthemodernenterprisehasperfectenterpriseIntranet,sothearchitectureofthesystemadoptedbasedontheSSHframeworkofJavaenterprisedevelopmentmode.SSHframeworkasthemostpopularandthemostsophisticatedJavaenterprisedevelopmenttechnology,thesoftwaresystemofefficiency,availability,maintainability,etc,providesagoodsupport,andthebesttechnologyintegratedwiththecurrentJavaWebdevelopment.Imainlyundertakesystemmanagementsubsysteminthesystemdevelopment.Thesubsystemincludesuserregister,login,usermanagement,rightsmanagement,usergroupmanagementmodule,etc.Thispaperfirstbrieflyintroducessomeapplicationbackgroundofthehumanresourcesmanagementsystemandapplicationconditions;Secondlyintroducestheadoptedbytheprojectdevelopmentplatform,developmenttoolsanddevelopmentenvironments;Thispapermainlydescribesthesystemdevelopmentprocess,fromprojectplanning,requirementsanalysis,systemdesign,codingandimplementationphasesystemwasintroducedindetailthedevelopmentprocess,implementationplanandstrategy,etc.Keywords:Humanresourcemanagement;Systemmanagement;SSHframework;JavaWebdevelopment;Object-orientedmodeling目录TOC\o"1-5"\h\z绪论1研究背景1设计目标1关于本系统的基本介绍2论文结构2系统开发环境与技术3系统开发环境3MyEclipse介绍3Tomcat服务器介绍4系统开发技术4JSP与Servlet技术4JavaScript简介7MVC框架8SSH框架9系统需求分析14需求描述14系统界面设计及操作风格的需求14系统功能描述14系统运行环境16系统的一般性规定17对性能的规定17对时间特T^的规定17输入输出要求17数据管理能力要求18网络安全要求184.系统的设计与实现19系统层次划分19数据库的设计与实现19数据库的数据模型25系统的设计与实现28系统项目的文件夹结构28登录模块31注册模块32系统管理子系统34档案管理子系统40合同管理子系统42总结45致谢46参考文献47.绪论研究背景随着信息技术飞速发展,人们现在已处在数字化的生存空间之中。互联网构造了无限的信息资源,它的普及已经从根本上改变了人们现实中的生活方式和工作方式,也改变了企业的经营方式、管理方式和服务方式。传统的依赖手工方式的记录的管理方式已经远无法满足企业的需求,传统的方式效率普遍较低,无法对数据进行有效的、规范的管理,查询比较困难,数据准确性、安全性相对较差,那么企业对于新的管理平台的需求是必然的。通过新的管理系统平台,企业能够大大提高各方面效率,而且方便了企业与员工之间的相互交流,能够方便满足将来的业务需求。当今,网络技术的迅猛发展,使得基于WetFF发的各类信息系统已经成为一种主流趋势。基于Web勺系统具有的特点:(1)信息的及时更新和发布;(2)良好的用户界面和接口;(3)方便操作和管理;(4)系统功能的通用性;(5)灵活性和可扩展性;正是在这样的社会大背景下,我们开始进行“安博人力资源系统”的课题研究,其目的在于通过建设一个网站来实现基于We出勺信息系统的上述特点,以展现该类管理系统的快速、便捷、准确地发布、管理信息,提供信息管理的强大功能和作用。人力资源管理平台可以帮助企业实现对人力资源信息数据更好的管理,大大提高工作人员的效率,帮助企业高层及时了解企业员工现状。设计目标开发设计本系统的任务是对人力资源信息数据的管理。通过该系统能够让用户对档案信息、合同信息进行添加、删除、修改、查询;并能够让管理员对用户进行管理。开发系统的目标是帮助人力资源公司进行员工的档案、合同信息管理,需要满足的要求具体包括如下:(1)网页风格符合人力资源企业的特点,简单实用;(2)能够实现对于人力资源信息数据的管理;(3)网站运行安全、稳定;关于本系统的基本介绍系统名称:安博人力资源管理平台用户:甘肃安博人力资源服务有限公司运行环境:WindowsXP(4)开发平台:SSHff架、SQLServer2005、Tomcat6.0开发语言:Java论文结构本文的章节安排如下:第一章:绪论,说明本文的研究背景、设计目标和系统的基本信息介绍,为接下来系统后台的分析与设计做准备。第二章:系统开发环境与技术,简单介绍系统实现所依赖环境和开发所用的技术。如MyEclipse、Tomcat服务器、SSHf1架、JSP与Servle原理、JavaScript。第三章:系统需求分析,从系统功能需求和一般性规定对系统需求进行了详细阐述。第四章:系统的设计与实现,给出系统后台的具体设计与实现,包括系统各个模块功能以及数据库的设计与实现。第五章:总结,对整个论文总结,并针对目前工作中的不足对未来工作的展望。.系统开发环境与技术系统开发环境安博人力资源管理平台以MyEclipse8.5为开发平台,且由Tomcat6.0充当Wet®务器来开发实现。MyEclipse介绍MyEclipse(MyEclipseEnterpriseWorkbench)是一款商业软件,是一个非常优秀的用于开发Java、J2EE的Eclipse插件集合,是对EclipselDE的扩展,是基于Java和Eclipse的可扩展开发平台,它的功能非常强大、支持也十分广泛、特别是对各种开源产品的支持很不错。就其工具本身而言,它是功能丰富的J2EE集成开发环境,包括了完备的编码、调试、测试和发布功能,利用它可以在数据库和J2EE的开发、发布以及应用程序服务器的整合方面,极大地提高工作效率。可以说,MyEclipse几乎囊括了目前所有主流开源产品的专属eclipse开发工具。随着MyEclipse2013支持JQuery,你可以通过插件提升性能,并可添加动画效果到设计中。简单而言,MyEclipse是eclipse的插件,也是一款功能非常强大的J2EE集成开发环境,支持代码编写、配置、测试及除错。程序的功能包括:HTM国能编辑器、JavaServlet、Struts、JSFCSSJavaScript、SQLHibernate、Spring>EJB3等,带有自动完成和语法高亮显示功能的J2EE编辑器。尽管eclipse是使用Java语言开发的,但它的用途并不限于Java语言。例如:支持诸如C/C++COBO®Eiffel及Perl等编程语言的插件。在结构上,MyEclipse的特征包括:J2EE模型WEB开发工具数据库服务J2EE项目部署服务应用程序服务器的连接EJB开发工具MyEclipse整合帮助由于MyEclipse结构上的这种模块化,使我们在不影响其他模块的情况下,对任一模块可以进行单独的扩展和升级。兰州交通大学毕业设计(论文)Tomcat服务器介绍Tomcat最初是由Sun公司的软件架构师詹姆斯・邓肯・戴维森开发的,后来在他的帮助下变为开源代码,并由Sun贡献给Apache基金会。Tomcat服务器是免费开源代码的We的用服务器,属于轻量级应用服务器,在中小型系统和并发访问用户相对较少时被普遍使用,是开发和调试JSP程序的首选。实际上,Tomcat部分是Apache服务器的扩展,但它是独立运行的,因此,当你运行Tomcat时,它实际上是作为一个与Apache独立的进程单独运行的。Tomcat是一个Servlet和JSP容器,具有处理HTMIM面的功能,当配置正确时,Apache为HTMIM面服务,而Tomcat实际上运行JSP页面和Servlet。由于Tomcat运行时占用的系统资源少,扩展性好,支持负载平衡与邮件服务等开发应用程序的基本功能,它很受广大程序员的喜欢;而且,它还在不断地改进和完善中,任何喜欢它的程序员都可更改它或加入新功能。由于Java的跨平■台特性,基于Java的Tomcat也具有跨平台性。与传统的桌面应用程序相比,Tomcat中的应用程序是一个WAR文件。WA思Sun提出的一种We的用程序格式,与JAR类似,是文件的一个压缩包。这个包中的文件按一定的目录结构来组织:其根目录下包含有html和Jsp文件或目录,另外,还有一个WEB-INF目录,这个目录很重要。通常,在WEB-INF目录下有一个web.xml文件和一个classes目录,web.xml是应用的配置文件,而classes目录下则包含编译好的Servlet类和Jsp或Servlet所依赖的其他类(如JavaBean)。通常,这些所依赖的类可以打包成JAR文件,然后放到WEB-INFF的lib目录下。因为Tomcat的技术先进、性能稳定,且免费,所以深受广大程序开发者的喜爱,并得到了部分软件开发商的认可,已经成为目前比较流行的WetS用程序服务器。2.2系统开发技术安博人力资源管理平台的开发技术是基于J2EE架构的SSH1架技术。开发平台是MyEclipse,Tomcat6.0作为服务器,JDK1.7.0_03作为工具包。JSP与Servlet技术JSP全称JavaServerPages,是由SunMicrosystems公司倡导,许多公司一起建立的一种动态技术标准。其根本是一个简化的Servlet设计,它实现了HTM印法中的Java扩张(以<%%非式)。在传统的网页HTMLC件中加入Java程序片段和JSP标签,就能够使JSP网页中的Java程序片段操纵数据库、重新定向网页,以及发送E-mail等,实现建立动态网站所需的功能。所有程序操作都在服务器端运行,通常返回给客户端的就是一个HTML文本,因此客户端只要有浏览器就能浏览。Web服务器在遇到访问JSP页面的请求时,首先执行其中的程序段,然后将执行的结果连同JSP文件中的HTMLK码一并返回给客户端。网络上传送给客户端的仅仅是得到的结果,这样大大降低了对客户浏览器的要求,即使客户浏览器端不支持Java,也可访问JSP页面。通常,JSP页面很少进行数据处理,只是用来实现网页的静态化,只是用来提取数据,不会进行业务处理。JSP是一种动态页面技术,它的主要目标是将表示逻辑从Servlet中分离出来。JSP将网页逻辑与网页设计的显示分离,支持可重用的基于组件的设计,使基于Web的应用程序开发变得容易、迅速。JSP页面是由HTML弋码和嵌入其中的Java代码所组成。服务器在页面被客户端请求以后,对这些Java代码进行处理,然后将生成的HTMIM面返回给客户端。JSP具备了Java技术的简单易用,完全面向对象,具有平台无关性且安全可靠。Servlet是服务器上运行的小程序,是一种独立于平台和协议的Java应用程序,可以生成动态的WebM面。Servlet位于Wet®务器的内部,通过Wetffi务器进行加载,该Wet®务器必须包含支持Servlet的java虚拟机。Servlet是JSP的技术基础,而且大型的WebS用程序开发,需要Servlet和JSP的配合才能完成。JSP工作原理JSP页面通常以扩展名为.jsp的纯文本文件的形式存在服务器上,以当一个JSP文件第一次被请求时,JSP引擎把该JSP文件转换成一个Servlet,而这个引擎也是一个Servlet。JSP引擎先把该Jsp文件转换成一个Java源文件,在转换时若发现语法错误,转换过程将中断,并向服务器和客户端输出出错信息;若转换成功,JSP引擎将用javac把该Java源文件编译成相应的class文件。然后创建一个该Servlet实例,该Servlet的INt()方法被执行,此方法在Servlet的生命周期中只被执行一次。然后,Service()方法被调用来处理客户端的请求。对于每一个请求,JSP引擎创建一个新的线程来处理该请求。若有多个客户端同时请求该JSP文件,则该引擎会创建多个线程,每个线程对应一个客户端请求。JSP页面被编译成Servlet之后,其执行代码以独立线程的形式一直存在服务器的内存中,以后该JSP页面再提出请求时,就不需要重新编译,至到该页面被修改或WebS用程序重新启动。当需要销毁某个文件时,就调用Destroy()方法来释放相应的资源。图2.1所示为JSP的工作原理图Web服务器图2.1JSP的工作原理JSP语法)常用JSP命令:页面指令,主要用来指定当前JSP页面的属性。<jsp:include>允许包含其他动态和静态文件。<jsp:forward>将一个JSP文件传给另一个JSP文件。<jsp:plugin>可以通过Java插件在浏览器中运行JavaApplet。<jsp:useBean>是用来访问JavaBean的动作标记。当JSP页面使用<jsp:useBean>标记时,表示将引用一个JavaBean的实例。JavaBean标记的语法格式如下:<jsp:useBeanid="实例名称"scope="范围”class="类名"type="类的类型"beanName="JavaBean的名称/>。)JSP内置对象:为了方便WEB5面开发,JSP提供了一组内置对象,这些内置对象可以不经显式的声明而在程序中直接使用,JSP的主要内置对象有Request、ResponseOut、Session等。通过这组内置对象,可以实现页面的一些请求输入、输出功能,还可实现数据在页面之间的交互。Request对象:主要功能是接受客户端以HTT叨式传送的数据,实现与客户交互的功能。一般最常用的是它的getParameter(Stringname)方法来获取传递的参数。Response对象:主要功能是用来对客户的请求做出响应,与Request对象对应cResponse对象用于将服务器的数据发送到客户端,输出的数据可以是各种数据类型,甚至是文件。一般经常用到的是它的sendRedirect(URLurl)方法来重定向当前用户访问的urloOut对象:主要功能是用于动态地向客户端输出数据信息,主要作用是在Web浏览器内输出信息。在数据的输出方面会经常用到它的rintln(parameter)方法,该方法也是进行纠错处理时一个比较有效的输出方法。Session对象:主要功能用来保存每个用户在会话期间的数据信息,这样就方便了会话处理工作。当用户登陆网站时,系统将为其生成一个session对象,用以记录该用户的个人信息,当用户退出网站时,该session对象将会自动注销。Session对象可以绑定若干个人的信息或java对象。JavaScript简介JavaScript是一种基于对象和事件驱动且具有相对安全性的客户端脚本语言,也是一种广泛应用于客户端WEBF发的脚本语言,常用来给HTMLH页添加动态功能,比如响应用户的各种操作。它最初是由Netscape公司的BrendanEich设计,是一种动态、弱类型、基于原型的语言,内置支持类。JavaScript是Sun公司的注册商标。完整的JavaScript实现包含三个部分:ECMAScript,字节顺序记号,文档对象模型。JavaScript是为了适应动态网页制作的需要而诞生的一种编程语言,现今广泛地应用于Internet网页制作。JavaScript是由Netscape公司开发的一种脚本语言(scriptinglanguage),或者称为描述语言。JavaScript的出现使得用户和网页之间实现了一种动态的、实时性的、交互性的关系,使得网页包含了更多活跃的元素和更加精彩的内容。在HTML1础上,使用JavaScript可以开发交互式Web网页。JavaScript由于短小精悍,且是在客户机上执行的,因此大大提高了网页的交互能力和浏览速度。JavaScript加入网页的两种方法:(1)直接加入HTM仪档这是最常用的方法,大部分含有JavaScript的网页都采用这种方法,如:<scriptlanguage="Javascript"><!--document.writeln("这是Javascript!采用直接插入的方法!");//-Javascript结束--></script><scriptlanguage="Javascript”>用来告诉浏览器这是用JavaScript编写的程序,需要调动相应的解释程序进行解释。HTML勺注释标签<!--和-->,用来去掉浏览器所不能识别的JavaScript源代码,这对于不支持Javascript语言的浏览器来说是很有用的。//-Javascript结束:双斜杠表示JavaScript的注释部分,即从〃开始到行尾的字符都被忽略。<script></script>的位置并不是固定的,可以包含在<head></head>或侬。~丫><玲。~丫>中的任何位置。(2)引用方式若项目已经有一个JavaScript源文件(以js为扩展名),则可以采用这种引用的方式,以提高程序代码的利用率。其格式如下:<scriptsrc=urllanguage="Javascript"></script>其中url就是.js文件的地址。同样,这样的语句可以放在HTMLt档头部或主体的任何部分。如果要实现“直接插入方式”中的效果,可以首先创建一个JavaScript源代码文件“script.js",其内容如下:document.writeln("这是Javascript!采用直接插入的方法!”)。在网页中可以这样调用程序:<scriptsrc="script.js"language="Javascript"></script>MVC框架MVO一种架构设计模式,该模式主要应用于图形化用户界面(GUI)应用程序。MVC即Model-View-Controller由模型(Model)、视图(View)、控制器(Controller)三部分组成,M代表业务逻辑,V代表视图,C代表控制层。模型(Model)层:是企业数据和业务规则,它具有最多的处理任务。一个软件实现了什么功能,它该如何实现功能,以及这些功能之间的联系都是在模型层进行处理的。模型层是一个软件的核心,对于软件功能的好坏、完善,业务层起到了决定性的作用。视图(View)层:是用户所能看到的并与之交互的界面。在J2EE技术中,常用的表示层技术主要由JSP、JSF。视图向用户显示相关的数据,并能接受用户的输入数据,但是它不能进行实际的业务处理。视图还可以接受模型发出来的数据更新事件,从而对用户界面进行同步更新。控制(Controller)层:接受用户的输入并调用模型和视图去实现用户的需求。控制层很少做与业务有关的事情,比如登录验证。所以,在软件的分层结构设计中,控制层的代码量几乎是最少的,但它的作用也是非常重要的。MVC框架具有耦合性低、重用性高、生命周期成本低、部署快、可维护性高等特点。视图层和业务层分离,就允许更改视图层的代码而不需要重新编译模型和控制器的代码,同样,一个应用的业务流程或业务规则改变后就只需要改动MVC真型层。因为模型、视图和控制的分离,使得很容易改变应用程序的数据层和业务规则。MVCS得开发和维护用户接口的技术含量降低。分离视图层和业务层也使WEEK用更易于维护和修改。模型层、视图层、控制层三者之间的关系和各自的功能如图2.2所示:A方法调用►事件图2.2MVC模式关系和功能图SSH框架SSH为Struts+Spring+Hibernate的一个集成框架,是目前比较流行的一种web应用程序的开源框架。其中,Struts进行流程控制,Spring进行业务流转,Hibernate进行数据库操作的封装。Struts的MV酸计模式使我们的逻辑变得很清晰,Spring的IOC和AOF#我们的产品最大限度上解耦,Hibernate对实体对象持久化。典型的J2EE三层结构为表现层、业务逻辑层和数据服务层,三层体系将业务规则、数据访问以及合法性校验等工作放在业务逻辑层处理。客户端不直接与数据库交互,而是通过组件与业务逻辑层建立连接,再由业务逻辑层与数据库交互。表现层采用的是传统的JSP技术,业务逻辑层采用的是Spring+Hibernate,为了将控制层与业务逻辑层分离,又细分为:1)Action层(web层),即MVC奠式中的controller,负责控制业务逻辑层与表现层

的交互,调用业务逻辑层,并将业务数据返回给表现层作组织表现,系统在这采用Struts。Service层,即业务逻辑层,负责实现业务逻辑,业务逻辑以DACg为基础,通过对DAO&件的模式包装,完成系统要求的业务逻辑。DAOS,负责与持久化对橡交互,该层封装了数据的增、删、改、查的操作。Entity层,持久化对象,通过实体关系映射的工具将关系型数据库中的数据映射成对象,方便的实现以面向对象的方式操作数据库,系统在这采用Hibernate。Spring的作用贯穿整个业务逻辑层,将Action层、Service层、DAO©以及Entity层无缝整合,其数据服务层用来存放数据。SSH框架中Struts、Spring、Hibernate的介绍:StrutsStruts对Model、View和Controller都提供了对应的组件。ActionServlet,这个类是Struts的核心控制器,负责拦截来自用户的需求。Action,这个类由用户提供,负责接收来自ActionServlet的请求,并根据该请求来调用模型的业务逻辑方法来处理请求,并将结果返回给JSP页面显示。Model部分由ActionForm和JavaBean组成,其中ActionForm用于将用户的请求参数封装成ActionForm对象,该对象被ActionServlet转发给Action,Action根据ActionForm里面的请求参数处理用户的请求。JavaBean则封装了底层的业务逻辑,包括数据库访问。View部分该部分采用JSP技术实现。Struts提供了丰富的标签库,使用标签库可以减少脚本的使用。Controller组件Controller组件有两个部分组成:系统核心控制器、业务逻辑控制器。系统核心控制器,对应ActionServlet,该控制器继承了HttpServlet类,该控制器负责拦截所有的HTTP请求,然后根据用户请求决定是否要传给业务逻辑控制器。业务逻辑控制器,负责处理用户请求,其本身不具备处理能力,而是调用Model来实现处理,对应Action层。Struts配置文件的核心代码:<struts><!--<!--用户配置--><packagename="user"namespace="/"extends="access"><actionname="userAction_*"method="{1}"class="cn.hr.hrmps.struts2.action.UserAction”><resultname="userList">WEB-INF/user/list.jsp</result><resultname="user">WEB-INF/user/view.jsp</result><resultname="toAdd">WEB-INF/user/add.jsp</result><resultname="toEdit">WEB-INF/user/edit.jsp</result></action></package></struts>SpringSpring是一个开源框架,是一个轻量级的控制反转(IoC)和面向切面(AOP的容器框架,它是由RodJohnson创建,它的创建是为了解决企业应用开发的复杂性。Spring使用基本的JavaBean来完成以前只能有EJB完成的工作,并提供了更多的企业应用功能,且Spring的用途不仅仅限于服务器端的开发。Spring具有简单性、可测试性和耦合性等特点,任何Java应用都可从中受益。控制反转(InversionofControl,缩写IoC),也叫做依赖注入(DI),是一个重要的面向对象编程的法则,通过这种技术可以削减程序的耦合性,它也是轻量级的Spring框架的核心。应用控制反转,对象在被创建的时候,由一个外界实体调控系统内的所有对象,将其所依赖的对象的应用,传递给它,也可说是,依赖被注入到对象中。所以,控制反转是关于一个对象如何获取它所依赖对象的引用,这个责任的反转。面向切面是Spring提供的面向切面编程的一种技术,允许通过分离应用的业务逻辑和系统服务(如事务管理(Transaction))进行内聚性的开发。Spring可以将简单的组件配置、组合成复杂的应用。在Spring中,应用对象以声明的方式被组合,典型的是在一个XML文件中。Spring还提供了事务管理、持久化框架集成等基础功能将应用逻辑的开发留给了程序员。Spring的这些特征使程序员可以编写更干净、更可管理、且易于测试的代码。SSH三层框架中Hibernate交由Spring管理,Spring配置文件的核心内容:<!--定义事务管理器--><beanid="transactionManager"class="org.springframework.jdbc.datasource.DataSourceTransactionManager"11><propertyname="dataSource"ref="dataSource"></property></bean><!--定义事务通知--><tx:adviceid="txAdvice"transaction-manager="transactionManager"><!--定义方法的过滤规则--><tx:attributes><!--所有方法都使用事务--><tx:methodname="save*"propagation="REQUIRED”/><!--定义所有get开头的方法都是只读的--><tx:methodname="delete*"propagation="REQUIRED"/><!--所有方法都使用事务--><tx:methodname="get*"propagation="REQUIRED"/><!--定义所有get开头的方法都是只读的--><tx:methodname="set*"propagation="REQUIRED"/></tx:attributes></tx:advice><beanid="UserInfoDAO"class="com.hr.dao.UserInfoDAO"><propertyname="sessionFactory"><refbean="sessionFactory"/></property></bean><beanid="UserInfoAction"class="com.hr.action.UserInfoAction"><propertyname="userinfodao"><refbean="UserInfoDAO"/></property></bean>HibernateHibernate是一个开放源代码的对象关系映射框架,它对JDBC1行了轻量级的对象封装,使得程序员能够使用对象编程思维随心所欲的来操纵数据库。Hibernate可以应用在使用JDBC的任何场合,既可以在Java客户端使用,也可以在Servlet/JSP的WEB12应用中使用。Hibernate的核心接口共有五个,分别是Session>SessionFactory、Transaction、Query、Configuration,这五个接口在任何开发中都会用到。通过使用这些接口,可以对持久化对象进行存取,还能够进行事务控制。下面是对五个核心接口的介绍:Session接口:负责执行被持久化对象的CRU映作,CRUDM乍是完成与数据库的交流,包含了常见的SQL语句。Session对象是非线程安全的,且Hibernate的session不同于JSP应用中的HttpSession。SessionFactory接口:负责初始化Hibernate,它充当数据存储源的代理,并负责创建Session对象。这里用到了工厂模式,通常一个项目只需要一个SessionFactory,当要操作多个数据库时,可为每个数据库指定一个SessionFactory。Transaction接口:负责事务相关的操作,它是可选的,开发人员可以设计编写自己的底层事务处理代码。Query接口:负责执行各种数据库的查询,它可以使用HQL语言和SQL语句两种表达方式。Configuration接口:负责配置并启动Hibernate,创建SessionFactory对象。在Hibernate启动过程中,Configuration类的实例首先定位映射文档的位置并读取配置。然后创建SessionFactory对象。3.系统需求分析需求描述当前大量企业的员工的管理尚处于手工作业阶段,不但效率低下,且常因为管理的不慎而出现维漏。传统的依赖手工的方式记录,效率较低,无法实现对数据的系统规范的管理,查询困难、数据准确性、安全性较差。为了满足企业的需求,现设计一人力资源管理系统,来对人力资源数据进行管理,帮助企业达到员工管理的办公自动化,节约管理成本,大幅度提高人力资源数据管理的效率。在国内,各个企业原有的手工管理方式现已不适应形式的发展,为实现从静态管理到动态管理的转变,树立企业的新形象,必须应用计算机来辅助管理,从而全面实行信息化管理,能够对员工的信息进行动态监控,提升企业管理的档次和水平。人力资源管理系统的建设是企业适应市场形势,新式管理的必由之路。系统界面设计及操作风格的需求安博人力资源管理系统页面设计应与企业的结构、文化风格保持一致,采用清新稳重的暗灰色格局,以简洁、明了的引导方式,相对统一的网站风格和布局,突出网站的重点;在网站设计实施风格上坚持美观大方、庄重朴实的风格,界面具有亲和力,充分展示安博人力资源管理系统的风采;切实把安博人力资源管理系统的门户网站建设成为“公司形象展示的窗口、信息发布的载体、政务信息公开的平台、交流互动的桥梁、公共服务的门户”。“安博人力资源管理系统的门户网站”在整个版面、栏目模块布局、色彩、文字等方面的设计,使之更美观、简洁、实用。易用性:操作界面与操作风格尽可能与安博人力资源系统系统保持一致,使用风格同样的菜单及正文区设计,菜单操作方式以及信息提示位置尽可能相同,以便于操作人员尽快熟悉本系统功能。系统功能描述基于SSHM架的人力资源管理系统主要包括:系统管理、档案管理、合同管理三个子系统。系统管理子系统主要包括登录、注册、用户的添加、删除、修改、查询,权限的添加、回收、查询,角色的赋予、回收、查询;档案管理子系统主要包括档案的建立、删除、修改、查询,物资报表打印,生日提醒;合同管理子系统主要包括合同的建立、删除、查询、修改,合同到期提醒。

安博人力资源管理系统的系统角色分为4种:人力资源经理、人力资源专员、信息录入员、系统管理员(admin_role)。如图3.1所示为安博人力资源管理平台的系统管理子系统的用例图,它反映了该子系统的设计应该实现哪些功能。人力资源经理用户信息的增、删、改、查图3.1系统管理子系统的用例图如图3.2所示为安博人力资源管理平台的整个系统的实体类图,它反映了系统的各实体之间的关联和依赖关系。

appliedion取intB血向ichai物^fiiiilAddreSS:丫凯鼻则^p:stCoce:Varchar^D)^conlrartTheintftiimeStait.dateuml%unitld:intconysct觐叩he汕北Id:ini

%name:appliedion取intB血向ichai物^fiiiilAddreSS:丫凯鼻则^p:stCoce:Varchar^D)^conlrartTheintftiimeStait.dateuml%unitld:intconysct觐叩he汕北Id:ini

%name:划ch前闻)

B瞅,varcharpO)

*ninZuvarchapDJ^bilhDaleOats

apoliticalFace:览岫讨(50)

年cuM力恒W町,mharfO)

4idCard:varchar(50)

魏白I:砒h的酬

削端临恸口砒愉即

觎1白.8:varch3r(20)

勖d明尼e:varchai(30)%conlracild:nt耿]ntractN前汜川航植®DJ魏1il陋mm:varc愉顿i^userid:int

电鸵匚mhar(IO)

事irtd盯,dlimg

^education:mhai(50)

看rtw网:聃忙愉ifl⑼

孰)gi水由他糊加电)

§>logiiPwd:ochar(50J

telephone:mahi(90)

^remark:vatthaifSO)苗conlacter:varthai(5li)*timeEnd:dale^:cntactPJumber:mhaifEU)J'amilyprivilegepidm

%name:vacharfBO)

以cloinW:甯扁

^Hescriplnn:nrchaiflOO).7role魏硒d:mt

勖怵冠由他巾电v3rchari90)

取日前岫,硒蹴0)

孰尤加.恸c怕而;

kolilicalFaceranchaf(ED)

MrkUnn,啕rcha而)新d:int

^name:varchai^O)

^ascription:Hichai^O)网

J*

sarchil^archiwld:mt

%TJame附ic网仙

%fidName恻曲㈣

加,;聊网口)-g电int

%niinZu:ocharpO|

^brlhDate:date

如加田献:恸加顿

%femilylype.varrhai(53j

如dding;眼岫肝(90)

^degree:mhar(50)

觎就HF睚:varchaf^D)

^healthSiaius:vanh耐

%idCard:rare桶型)——

年血泅闻加£5;啊巾加假:i研udy的削卸d:nt^HrnieSlart:date^limeEnddatB奥迪成女械I;捌加忸J

就哪「咫ich制(25)\旬用udyT那:硼:愉work鱼埔加d.ini

^timeSlail:date

胡延End:d猴

^orkUnit:临忙幅帆)Mni岫1此陶枷阿

^KtiemePosition:^rchaijHJ图3.2系统实体类图3.1.3系统运行环境(1)硬件环境:CPUIntel(R)Pentium(R)DualT23901.86GHz内存:2G硬盘:250G显示:ATI独立显卡(2)软件环境:操作系统:WindowsXPProfessionalSP3数据库:SQLserver2005浏览器:MicrosoftInternetExplorer相关应用软件:Tomcat6.0,Dreamweaver8PowerDesigner15.1、RationalRose开发平台:MyEclipse8.5系统的一般性规定对性能的规定(1)安全性:系统应该具有较强的安全性,对数据和相关的信息有较强的保护性。(2)稳定性:系统应该在一定环境下稳定运行。(3)兼容性:系统能够与其它软硬件有良好的兼容性(4)实用性:考虑到要尽量满足业务功能需求的前提下,又要适应各业务角色的工作特点,该系统做到简单、实用、人性化,实现了统一身份和人力资源管理、统一内容管理、个性化界面和内容定制。(5)可维护性:系统设计应标准化、规范化,按照分层设计,软件构件化实现。一是使业务与实现分离,逻辑与数据分离;二是以统一的服务接口规范为核心,使用开放标准;三是构件语意描述形式化;四是提炼封装构件规范化。(6)可扩展性:考虑到网上业务建设是一个循序渐进、不断扩充的过程,本期项目建设将搭建底层框架基础,以便于未来采用积木式结构,整体构架可以与原有系统进行无缝连接,为今后系统扩展和集成留有扩充余量。(7)可移植性:选择开放的应用平台,建设一套与平台无关,以统一的服务接口规范和与各种数据库相连的应用组件。对时间特性的规定人力资源管理系统的查询时间取决于服务器和Wek»U览器之间的连接宽带以及同时访问系统的客户端的数量,系统的实现应以快速响应管理人员的请求为优先目标。输入输出要求输入一用户通过WEBJ面将各种用户信息数据输入,导入数据或者提交查询、修改、删除请求,系统将数据的存储格式为数据库专用格式。输出系统通过调用数据库的信息将结果数据显示在WebM览器的HTMIM面上,并能够根据业务的需要生成指定的报表或数据的汇总统计结过以及进行打印工作。兰州交通大学毕业设计(论文)数据管理能力要求(1)相应的数据访问控制措施(2)登录时用户的身份鉴别与权限控制(3)数据的完整性保护措施。网络安全要求(1)通过设置安全级别权限来增强系统的安全性。(2)通过设置用户密码的复杂程度,来增强系统的安全;若密码被盗,应快速告知管理员注销该用户。(3)对来自内部的攻击则抵御的能力不强,只能关闭服务器。4.系统的设计与实现系统层次划分在该系统中,系统共分为5层,分别为表现层、控制层、业务逻辑层、数据访问层、数据层,如图4.1所示。图4.1系统层次划分图在表现层中,系统主要采用了JSP技术,将Action传递过来的数据封装在ActionForm对象中,该对象被ActionServlet转发给Action,Action根据ActionForm里面的请求参数来处理用户的请求,进行一定的处理之后,冉反馈给前台页面。控制层的作用主要是控制协调系统中各模块的执行流程,在控制层中,Struts中的核心控制器ActionServlet控制系统流程转向。业务逻辑层,主要采用Javabean,来实现对具体系统的业务逻辑处理。数据访问层,主要是采用Hibernate持久化方案,通过Hibernate来对数据层进行封装操作,这样了方便于在不同的数据库系统间移植。Hibernate对数据的持久化操作实现了以面向对象的思想来操作数据库。数据层存放系统中的数据,本系统采用MySQ散据库。数据库的设计与实现数据库是存放数据的仓库,也即是数据按照一定的规律存放在计算机中,它是信息系统的核心和基础,是信息系统开发和建设的重要组成部分,把信息系统中大量的数据按一定的模型组织起来,提供存储、维护、检索数据的功能,使信息系统可以方便、及时、准确地从数据库中获得所需的信息。数据库的设计是信息资源管理最有效的手段,数据库设计就是根据具体的应用环境,构造合理数据库模式,建立数据库的逻辑结构,有效存储数据,满足用户实际需求和系统应用处理要求。在动态网站设计中数据库的重要性不言而喻。合理地设计数据库结构可以提高系统运行的效率。如果设计不当,查询起来就非常吃力,系统的性能也会受到影响。数据库设计实际上就是对项目设计的一个整体规划,因为数据库的设计要从全局的角度考虑,而且数据库中表的结构都是与程序紧密相关的,如果数据库设计如果没有到位,程序的设计也会受到一定的影响。数据库的设计一般主要包括两个部分:对具体的网站系统的设计进行需求分析,确定需在数据库中保存的信息。确定每个表的字段属性。本系统采用的是MySQ擞据库,系统数据库名为hrmps,根据系统的设计和业务逻辑的分析,数据库HRM用包括12个数据表。本系统所用的数据库表有:user用户表role角色表privilege权限表user_role赋予角色表role_privilege赋予权限表archive档案表work工作经历表family家庭关系表study学习经历表contract合同表application应聘信息表unit单位表表4.1user(用户)表厅P列名数据类型长度标识主键允许空说明1userIdint20是是否用户编号(自土铢)

2birthdaydatetime20是是出生日期3educationvarchar50是学历4interestvarchar100是兴趣5loginNamevarchar50是登录名6loginPwdvarchar50是登录密码7sexvarchar10是性别8telephonevarchar50是电话9remarkvarchar100是备注说明,该表用于保存使用该系统的用户信息表4.2role(角色)表厅P列名数据类型长度标识主键允许空说明1ridint20是是否角色编号(自增长)2namevarchar20-是角色名3descritpionvarchar50是角色描述说明,该表用于定义该系统的系统角色表4.3privilege(权限)表厅P列名数据类型长度标识主键允许空说明1pidint20是是否权限编号(自增长)2namevarchar50是是权限名3actionUrlvarchar50是响应地址4descriptionvarchar50是是权限描述说明,该表用于定义系统中不同角色所具有的权限信息表4.4user_role(赋予角色)表厅P列名数据类型长度标识主键允许空说明1ridint20是是否角色编号,2uidint20是否用户编号说明,该表用于定义系统中不同用户所能分配的角色信息

表4.5role_privilege(赋予权限)表厅P列名数据类型长度标识主键允许空说明1pidint20是是否权限编号:2uidint20是否用户编号说明,该表用于定义系统中不同角色所能赋予的权限信息表4.6archive(档案)表厅P列名数据类型长度标识主键允许空说明1ArchiveIdint20是是否自增长:2UserIdint20是否用户编号3Namevarchar50是姓名4NickNamevarchar50是曾用名一5Sexvarchar50是性别6Agevarchar50是年龄7MinZuvarchar50是民族8BirthDateDate50是出生日期9NativePlacevarchar50是籍贯10FamilyTypevarchar50是户籍类别11Weddingvarchar50是婚姻状况:12Degreevarchar50是学历13PoliticalFacevarchar50是政治面貌14HealthStatusvarchar50是健康状况15IdCardvarchar50是身份证号16HouseAddressvarchar50是家庭住址说明,该表用于保存被管理用户的基本档案信息表4.7work(工作经历)表厅P列名数据类型长度标识主键允许空说明1WorkIdint20是是否自增长2ArchiveIdint20是否档案编号]3TimeStartDate50是起始时间4TimeEndDate50是终止时间5WorkUnitvarchar50是工作单位6UnitNaturevarchar50是单位性质7ExtremePositionvarchar50是最局职位

说明,该表用于保存被管理用户的工作经历信息表4.8family(家庭关系)表厅P列名数据类型长度标识主键允许空说明1FamilyIdint20是:是否自增长J2ArchiveIdint20是否档案编号]3MemberNamevarchar50是家庭成员名4Relativevarchar50是亲属关系15IdCardvarchar50是身份证号]6PoliticalFacevarchar50是政治面貌7WorkUnitvarchar50是工作单位说明,该表用于保存被管理的用户的家庭关系信息表4.9study(学习经历)表厅P列名数据类型长度标识主键允许空说明1StudyIdint20是:是否自增长;2ArchiveIdint20是否档案编号3TimeStartDate50是起始时间4TimeEndDate50是终止时间5GraduateSchoolvarchar50是毕业院校6Degreevarchar50是学历7StudyTypevarchar50是学习类型说明,该表用于保存被管理的用户的学习经历信息表4.10contract(合同)表厅P列名数据类型长度标识主键允许空说明1ContractIdint20是是否自增长2UserIdint20是否用户编号:3ContractNameDate50是合同名称4ContractTimeDate50是合同期限5TimeStartvarchar50是起始日期6TimeEndvarchar50是终止日期说明,该表用于保存被管理的用户的合同信息

表4.11application(应聘信息)表厅P列名数据类型长度标识主键允许空说明1ApplicationIdint20是:是否自增长;2ContractIdint20是否合同编号3Namevarchar50是姓名4Sexvarchar50是性别5MinZuvarchar50是民族6BirthDateDate50是出生日期7PoliticalFacevarchar50是政治面貌8CultivateWayvarchar50是培养方式9IdCardvarchar50是身份证号码10Mailvarchar50是电子箱11HealthStatusvarchar50是健康状况12Majorvarchar50是主修专业13Termvarchar50是学制14Degreevarchar50是学历15HouseAddressvarchar50是家庭住址16PostCode1varchar50是家庭所在地邮编17CurrentAddressvarchar50是现通讯地址18PostCode2varchar50是现通讯地址邮编19PhoneNumbervarchar50是联系电话说明,该表用于保存被管理的用户的应聘信息表4.12unit(单位)表厅P列名数据类型长度标识主键允许空说明1UnitIdint20是:是否自增长「2ContractIdint20是否合同编号3UnitNamevarchar50是单位名称4UnitBetovarchar50是单位隶属「5Contactervarchar50是单位联系人6ContactNumbervarchar50是联系电话7UnitNaturevarchar50是单位性质MailAddressvarchar50是通讯地址PostCode3varchar50是单位所在地邮编DanganAddressvarchar50是档案转奇地址PostCode4varchar50是转寄地址邮编HukouAddressvarchar50是户口迁移地址PostCode5varchar50是迁移地址邮编Notevarchar500是备注信息说明,该表用于保存被管理的用户的单位信息4.2.1数据库的数据模型数据库的数据模型是现实世界中数据特征的抽象。数据模型应该满足三个方面的要求:(1)能够比较真实的模拟现实世界(2)容易为人所理解(3)便于计算机实现概念数据模型(CDM也称信息模型,它以实体-联系(EnQty-RalationShip,简称E-R)理论为基础,并对这一理论进行了扩充。他从用户的观点出发对信息进行建模,主要用于数据库的概念级设计。通常人们先将现实世界抽象为概念世界,然后再将概念世界转为机器世界。换句话说,就是先将现实世界中的客观对象抽象为实体(Entity)和联系(Relationship),它并不依赖于具体的计算机系统或某个DBM系统,这种模型就是我们所说的CDM再将它转换为计算机上某个DBNS所支持的数据模型,这样的数据模型就是物理数据模型,即PDM物理数据模型,简称物理模型,是面向计算机物理表示的模型,描述了数据在介质上的组织结构,它不但与具体的DBMSt关,而且还与操作系统和硬件有关。每一种逻辑数据模型在实现时都有对应的物理数据模型,DBM财了保证其独立性与可移植性,大部分物理数据模型的实现工作由系统自动完成,而设计者只设计索引、聚集等特殊结构。CDM1一组严格定义的数据元素的集合,这些模型元素精确地描述了系统的静态特性、动态特性以及完整性的约束条件等,其中包括了数据结构、数据操作和完整性约束三部分。(1)数据结构表达为实体和属性;(2)数据操作表达为实体中的记录的插入、删除、修改、查询等操作;(3)完整性约束表达为数据的自身完整性约束(如数据类型、检查、规则等)和数据问的参照完整性约束(如联系、继承联系等);实体(Entity),也称实例,对应现实世界中可区别于其他对象的“事件”或“事物”。每个实体都有用来描述实体特征的一组性质,称之为属性,一个实体由若干属性来描述。实体集(EntitySet)是具体相同类型及相同性质的实体的集合。实体类型(EntityType)是实体集中每个实体所具有的共同性质的集合。实体是实体类型的一个实例在含义明确的情况下,实体、实体类型通常可以互换使用。实体类型中的每个实体包含唯一的标识它的一个或一组属性,这些属性称为实体类型的标识符(Identifier)。数据库的CDM(概念数据模型)和PDM(物理数据模型):(1)概念数据模型(CDIM图4.2所示为安博人力资源管理系统的概念数据模型,它反映了用户类型、权限、用户、合同、档案、单位、应聘者、工作经历、学习经历、家庭关系实体之间的实体联系图。馆色四,鼠种限弗色编号531nt—『Chiractars$56)南色插迷Characters£256)01)角笆辘掷艮段限编用权限名响应地址权限描述IntegerCharhrsCharactersCharacters如的OOOi)飘)lieatifier1<pi>皿分蹒色111Identifierl<pi>权限名Characterst25)性别Char&cttrs(8)民族Characters(25)政治面貌ChkrtctartQ5)培葬方式Characters%)身榭居ChBitclari/)E-nail□wricters1.15)健康状况Chvinters(25)专诋向Character5(25)学历Characters(0)学历Charicters[25]家庭住址CMracte门(50)由喘Chsritters(25)回聘著用尸编号如>Int,盯学历Chiract&rs出身日期Pali兴趣Characters姆)翳名CharactersGO)爵密留Chsrfttttrs60)阚Characters⑥电话Chirittsrsese)备注Characters蟠)用户application&性别ChiruiirB$)年髅民族IntegerCharacter:废)身份证号CharactersQS)蹒Characters忸5)P不弱」CkiTMters(15)觑悔CWactws(15)学历Charutari然)嘛面貌Characters(15)健康状况Chuficttri*5)冢庭住出Characters(25)档宝翁号5ilInt第讨Q》曾用名CharMters(15)档堂信.总包含VurI4eiti£iey_l<pi>contract(D)AContracther管理一IQ)所愿ATm)档案第.厂所属一IJm)提供unitrJ,i缆)*音解号占同吟同名麻开阚间皓就司合同哪Si》Int良eetCh^&cterE(15)Date口福Integer单位名称niirietftrE(15)单位耨ChtfftCttfS(15)联系大□urtcteri(2S)联系电话CharacterE(15)单就蜩Ch&rtctairi储0)通讯地址Characters(50)邮编ChiTRcter5侈)裆案转就北CWatttrs(SO)邮褊号ChMRCtiTE(50]口口迁移他止Chsractirs(50)邮敢翩Cbsracter^(25)备法信息Chsrtctirs(100J单位编号O1试电皿Identifier.1《pi》IdentifisrJ%i>编号开懈间毕业学校学历学凝型结束时同卷宪编号学璐历Int艇tD*馆Chsrt^UrsCh^^lersCharacUrs口也㈣

明)⑸IdatlifierJ々i)图4.2数据库的概念数据模型工瞰编号OIntifiB-F开始时间DU«结荣时间Date工作单位Chiricteri㈣星高职位Ch^ractors(15)单位性质Chirtctir'S她<H>Idcntifiwr.lGi》冢庭关系所属档案编号痂亏成员名关东Mm政治面貌工作隼位工出位ChaiactorsCharactersChaxact4rsChursetfirsChar@ctors3就)(15)凶as]同(2)物理数据模型(PDM)图4.3为安博人力资源管理系统的物理数据模型,它反映了用户类型、权限、用户、合同、档案、单位、应聘者、工作经历、学习经历、家庭表在数据库中以某种组织形式来存储。用户用尽^目iJii仙》TffiMo)上皆日常daletinechar(253)名char(50)器密%chai(50),图Ichar(8)电1古char(25fi)奋汪疝经(2元学习就家庭关一浦三mt成另名char(20)去年char(15)身令证号char(25)政治面明char(15)工作单也chai(25)龌械阳编号int<pk>杈限名char(25)响应蒯char(100)极限配char(»j遍寻int<pk>档累编号int<fk>开始时间datetime毕业瓢char[25)学历char(25)学习翘char(15)国束时间datetime匝焉者档案信息称国话寄移码息号

名堂人电性他显肯不正啸信编

位也系系第案编□成浩位

单单旗联单通邮省用户已看单char115)dur(15)chai(25)char(15)叱ari£:char(50)由ar(25)char(50)cE国)char(50)char(25)char(LOO)intUserCgeltract由一—comact铜合同编与i■口t<pk)用£里号iat常心合同部char(15)开始时再JdalEiLme逛施date!Line行同期用ml他灯⑻Lntchar(22)char(25)chai(25)char(15)dur(15)char(25)chartlb)char(25)char(25)intchar115'contractapplication□IT话编号1由-布根或、国治葬他M康业P工3庭弟通用系得瓦根住民政留身E-健专学学家邨观都假®!言明式号况向面方证口状方char(25)chai[8)char(£5)char[15)chai(25)char(25)chari.L5:char(25)char(25)chai(0)char(25)that(50)chari.25)char(50)char(25)char(15)tilt

LtLillL?-1-2-Dhft图4.3数据库的物理数据模型4.3系统的设计与实现系统项目的文件夹结构在编写代码之前,通常先将框架所需要的文件夹先创建出来(例如:创建各个框架层次用到的代码文件分开存放,如entity、dao、service、action等),这样不但可以方便以后的开发工作,也可以实现框架的规范化。在安博人力资源管理系统中,设计了如图4.4所示的项目文件结构图。T8HEMPS-:呼src(-由con.hraction&ntity七)struts.戈ml+J更JKESystemLibrary[SunJT)E16.013J十JavaEE5Libruri«£+£ReferencedLibraries十基SiHibernate3.3CoreLibraries-l4HebRoot+.9C5S+Klinages±)img+L>Js+打META'IHT+i2zt1theimesT:5WEB-IHF十^libapplicationCont^Kt.wmlX*web.xmlj.about,jspJ"addsucD栏j即j*addVser.jspJ*Archive.jspJ.Archivefull.jspJ*eontaet.jip『CQXitract.jspjJcontractfull,jspJ*Fraift#-l#ft.jspjJinde».jsp「login.jspj'qu^xian.jsp『registerjspT■一■1图4.4项目文件结构图项目目录结构中的几个重要的文件夹:entity:用于存放各数据表所对应的类文件。dao:用于存放各种操作数据库的类及接口文件。service:存放解决业务逻辑的类及接口文件。action:用于存放控制业务逻辑层和表现层之间数据处理的类struts:存放控制类Action和ActionForm类文件。WEB-INF该目录用来存储与Web应用程序相关的元信息。这些资源可以被Web应用程序中的Servlet和JSP页面访问。在该目录下一般存放下面这些内容:)classes目录:用来存放Java类文件,包括被编译后的Servlet文件等。止匕外,还可以存放一些配置文件,该目录是We眩用程序的上下文类路径。Java程序在寻找自身引用的其他类文件时,会搜索该目录下的Java文件。)Lib目录:该目录用来存放Wet®用程序中要应用的库文件,这些库文件打包为jar文件。该目录也是Webg用程序的上下文类路径。Java程序在寻找自身引用的其他类文件时也会搜索该目录。)web.xml文件:该文件称为Web^用程序部署描述符,是Web应用程序的配置文件,用于在应用程序开发人员、部署人员和集成人员之间传递配置信息。Web§器启动的时候,会使用该文件中的配置内容来加载应用程序。web.xml配置文件的核心代码:<!--配置spring上下文变量--><context-param><param-name>contextConfigLocation</param-name><param-value>/WEB-INF/applicationContext.xml</param-value><!--也可以写死路径:/WEB-INF/classes/applicationContext-*.xml,可以配置action、service、dao、hibernate四个文件--></context-param><!--配置spring监听器,由监听载入Spring的Applicationcontext--><listener><listener-class>org.springframework.web.context.ContextLoaderListener</listener-class></listener><filter-mapping><filter-name>struts2</filter-name><url-pattern>*.action</url-pattern></filter-mapping>4.3.2登录模块使用系统的用户分为4类,即是人力资源经理,人力资源专员,信息录入员,系统管理员(admin_role)。在系统中已经注册的用户可以根据用户名和密码登录系统,当用户输入用户名、密码,点击登陆按钮,系统会把用户名信息、密码信息和数据库中的对应的表进行信息匹配。匹配成功则很据不同的用户所具有的不同权限进入相应的管理页面,否则给出相应提示。系统管理员,是系统的超级用户,他可以添加、删除、修改、查询用户,为用户分配角色、为权限赋予角色。普通用户可以使用系统管理员分配的用户名、密码登陆系统。具体的登录的效果图如图4.5所示:*iCsctiflnF:as。会通同M用匚祖产河I—Ti「5,,,i鹏>卜也宓丽归一匕百豆口中导入V浦HEE片&flEV浦HEE片&flE•国格嫌肚隹弗鎏针全生俯耳中曹故总轻松姿态无畏前行0也容心.图4.5登录界面表4.13用户登陆模块功能实现页面表区域名称r说明对应义件formlform表单method="post"、action="login.jsploginNametext用户名loginPwdtext密码说明,该表为用户登录时所提交的页面对应表单的内容。如图4.6所示,当用户登陆成功后系统页面会跳转到后台管理的主界面甘市安博人力资源服务有限公司SERVICECD.;LfCl.甘京安博人力资源膏理系统用广

温馨提示

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

评论

0/150

提交评论