




免费预览已结束,剩余56页可下载查看
下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
本 科 毕 业 论 文 人才测评系统人才测评模块的设计和实现Talent Assessment System: Design and implementation of talent assessment module 姓 名: 学 号:学院:软件学院系:软件工程专 业:软件工程年 级:指导教师: 年 月51摘要随着企业的信息化和体制改革步伐,人才竞争使企业的人力资源面临前所未有的挑战。高端人才所具有的多年职场经历和面试经验容易影响招聘公司对于应聘者真实能力的判断。本系统为一个全面的选拔人才的测评系统,旨在帮助公司通过一系列测试判断出应聘者是否提供了真实的信息,从而选出最适合的人才,不断地提高企业的竞争力。本系统应用了Spring+Struts2+Hibernate(SSH)三大框架,采用多层体系结构,分为实体层、Dao层、服务层和Web层。实体层包括系统所要涉及的表和对应的实体类。Dao层提供各模块所需要的各种持久化操作。服务层负责业务逻辑。Web层用于处理页面和业务逻辑的交互、对数据进行必要的验证和转换和对业务数据进行呈现。此外还给出了开发环境的配置文件、映射文件、实现的类、流程图和界面图等。全文从项目背景出发,介绍了系统开发的背景和价值,在对关键技术进行介绍的基础上,结合实际项目,从系统分析、系统设计、系统实现和系统测试四个主要方面进行了详细论述,并在论文最后进行总结,指明下一步进行改进的地方。关键词: 人才测评;SSH;B/S架构 AbstractWith the pace of enterprise information and institutional reform, enterprises face unprecedented challenges in the competition for talent. High-end talents with years of experience in the workplace and interview easily affect the recruitment company for the judgment to the true ability of the candidates. This is an assessment system which affords comprehensive talent assessment. It helps to select the most suitable talent through a series of tests which judge whether the applicant provides the real information. The system applied the Spring + Struts2 + Hibernate (SSH) frameworks and used multi-layer architecture. It sub-divided into physical layer, Dao layer, service layer and Web layer. Physical layer includes the system tables to be involved and the corresponding entity class. Dao layer provides a variety of persistent operations the modules required. Business layer is responsible for business logic. Web layer is responsible for handling the interactive of pages and business logic, the necessary validation and conversion of data and the presentation of business data. In addition, the writer also gives the detailed design description including the developed environment configuration file, the mapping files, the classes, the flow charts and interface diagrams. Finally the writer also tested the system. The paper starts from the program background, and then introduces the background and value of the system developed. After the introduction of the key technologies, combined with the practical projects, the paper are discussed in detail from systems analysis, system design, system implementation and system testing four main aspects. And in the end the writer summed up the paper and identified the next step for improvement.Key words: Talent Assessment; SSH; B/S Architecture 目录第一章 绪论11.1引言11.2论文组织结构1第二章系统相关技术概述32.1 MVC设计模式介绍32.2 SSH系统架构介绍42.2.1 Spring简介42.2.2 Struts2简介52.2.3 Hibernate简介72.2.4 SSH整体架构简介8第三章人才测评系统分析103.1 系统需求分析103.1.1 功能需求103.1.2 可行性分析103.1.3 运行需求103.2 用例图103.3 流程图11第四章人才测评系统设计154.1 模块设计154.2 包和类设计164.3 顺序图设计204.4 数据库设计25第五章人才测评系统实现285.1 系统开发环境285.2 Spring文件的配置295.3 Struts2文件的配置315.4 Hibernate文件的配置335.5 数据库的配置345.6 控制器的实现345.7 系统WEB层的实现355.8 系统部署35第六章系统测试及运行结果376.1系统测试376.2运行结果41第七章总结与展望487.1论文总结487.2论文展望48参考文献49致谢.50ContentsChapter 1 Prefac.11.1 Introduction.11.2 The structure of this paper.1Chapter 2 System related technologies outline.32.1 Introduction of MVC design pattern .32.2 Introduction of SSH architecture .4 2.2.1 Introduction of Spring .42.2.2 Introduction of Struts2 .52.2.3 Introduction of Hibernate . .7 2.2.4 Introduction of SSH overall framework .8Chapter 3 Analysis of Talent Assessment System.103.1 Analysis of system requirements 103.1.1 Functional requirements .103.1.2 Feasibility analysis .103.1.3 Run demand .103.2 Use case diagrams .103.3 Flow chars .11Chpter 4 Talent Assessment System Design.154.1 Modules design .154.2 Packages and classes design .164.3 System sequence diagrams design .194.4 Database design .25Chapter 5 Implementation of Talent Assessment System.285.1 System development environment.285.2 Spring configuration .295.3 Strusts2 configuration .315.4 Hibernate configuration .335.5 Database configuration.345.6 Implement of controller .345.7 Implementation of WEB layer .355.8 System deployment .35Chapter 6 System testing and the running results .376.1 System testion.376.2 Running results.41Chapter 7 Summary and future works .487.1 Summary of this paper.487.2 Improvements and future works.48References.49Acknowledgements .50 第一章 绪论第一章 绪论1.1引言随着世界经济的飞速发展,企业间的竞争日趋激烈,竞争的层次也在不断地升级,由原来对技术和资金的争夺,转变为对企业的第一资源人力资源(或称人才) 的争夺1 。但是人力资源不同于一般的物质资源,无法通过简单的观察获得对性格、能力、潜力和动机等深层次因素的了解,而必须借助科学的手段,即人才测评对人员进行客观、全面的评价,从而为企业决策提供有利参考。所谓人才测评是指通过一系列科学的手段和方法对人的基本素质及其绩效进行测量和评定的活动。人才测评的具体对象不是抽象的人,而是作为个体存在的人其内在素质及其表现出的绩效。人才测评的方法包含在概念自身中,即人才测量和人才评价。人才测评的主要工作是通过各种方法对被试者加以了解,从而为企业组织的人力资源管理决策提供参考和依据。简单的说,人才测评就是以现代心理学和行为科学为基础,通过心理测验、面试、情景模拟等技术手段对人员的素质状况、发展潜力和个性特点等特征进行客观地测量和科学地评价。2本系统旨在满足企业正确选拔适合高端人才的需求,主要目的就是帮助公司通过一系列测试的题目判断出应聘者是否提供了真实的信息,从而选出最适合的人才,不断地提高企业的竞争力。本系统以B/S结构为基础的WEB应用开发模式为研究的基本出发点,采用Spring、Struts2和Hibernate三大框架设计和实现人才测评系统。通过多层体系结构,深入剖析开源框架Spring、Struts2和Hibernate的内部运行机制,从而进行有效的整合,以设计出一个灵活、松散耦合、可扩展且数据传递及时、重构性好的人才测评系统架构为目标,使得企业能够科学、有效的对人才进行测试选拔。1.2论文组织结构第一章为绪论。介绍了人才测评系统的开发背景、现状,明确所要完成的任务,最后给出研究本课题的目标、内容和意义以及论文组织结构。第二章为系统相关技术概述。介绍构建人才测评系统所需的关键技术Spring、Struts2和Hibernate。在对MVC设计模式介绍的基础上,大致介绍了Spring框架的特点、Struts2框架体系架构和核心组件和Hibernate框架及其核心接口。并提出基于Spring、Struts2和Hibernate框架进行开发的系统整体架构和开发模式。第三章为人才测评系统分析。主要从功能需求、可行性需求和运行环境需求等几个方面来研究人才测评模块的需求情况。同时,本章给出了用例图和流程图。第四章为人才测评系统的设计。对系统进行模块化设计、包和类的设计以及数据库的设计。第五章为人才测评系统的实现。给出系统开发环境、Spring配置文件、Struts2配置文件、Hibernate配置文件、控制器和系统WEB层的实现以及部署系统。第六章为系统测试及运行结果。给出测试用例和运行结果。第七章为总结与展望。对本系统设计与实现过程进行总结分析。总结其中的经验,分析系统中的不足。 第二章 系统相关技术概述第二章系统相关技术概述2.1 MVC设计模式介绍MVC(Model-View-Controller) 是一种设计模式,它强制性地使应用程序的输入、处理和输出分开。使用MVC设计模式时,应用程序被分为三个核心部件:模型(Model)、视图(View)和控制器(Controller),具体模式如图2-1所示。图2-1:MVC模式图海水工作室、百度百科、2010年 5月26日视图(View)代表用户交互界面。一个应用可能有很多不同的视图,MVC设计模式对于视图的处理仅限于视图上数据的采集和处理,以及用户的请求,而不包括在视图上的业务流程的处理。业务流程的处理交予模型(Model)处理。模型(Model)就是业务流程/状态的处理以及业务规则的制定。业务流程的处理过程对其它层来说是黑箱操作,模型接受视图请求的数据,并返回最终的处理结果,业务模型的设计可以说是MVC最主要的核心。把应用的模型按一定的规则抽取出来,抽取的层次很重要。抽象与具体不能隔得太远,也不能太近。MVC并没有提供模型的设计方法,而只告诉你应该组织管理这些模型,以便于模型的重构和提高重用性。业务模型还有一个很重要的模型那就是数据模型。数据模型主要指实体对象的数据保存。我们可以将模型单独列出,所有有关数据库的操作只限制在该模型中。 控制(Controller)可以理解为从用户接收请求, 将模型与视图匹配在一起,共同完成用户的请求,换言之它就是一个分发器,决定选择什么样的模型,选择什么样的视图,可以完成什么样的用户请求。控制层并不做任何的数据处理。例如,用户点击一个连接,控制层接受请求后, 并不处理业务信息,它只把用户的信息传递给模型,告诉模型做什么,选择符合要求的视图返回给用户。因此,一个模型可能对应多个视图,一个视图可能对应多个模型。 模型、视图与控制器的分离,使得一个模型可以具有多个显示视图。如果用户通过某个视图的控制器改变了模型的数据,所有其它依赖于这些数据的视图都应反映到这些变化。因此,无论何时发生了何种数据变化,控制器都会将变化通知所有的视图,导致显示的更新。这实际上是一种模型的变化-传播机制3。2.2 SSH系统架构介绍2.2.1 Spring简介Spring是一个开源框架,它由Rod Johnson创建。它是为了简化企业级系统开发而诞生的。使用Spring,你可以用简单的JavaBeans来实现那些以前只有EJB才能实现的功能。不止是服务端开发能从中受益,任何Java系统开发都能从Spring的简单、可测试和松耦合特征中得到好处。简单地说,Spring是一个轻量级的反向控制和面向切面的容器框架。1. 轻量级从大小和系统开始上说Spring都算是轻量级的。整个Spring框架可以打成一个1MB多一点的JAR包,并且Spring的处理开支也非常小。更重要的是,Spring是非侵入式的:基于Spring开发的系统中的对象一般不依赖于Spring的类。2. 反向控制Spring提倡使用反向控制来实现松耦合。使用反向控制,对象是被动接收依赖类而不是自己主动去找。3. 面向切面Spring对面向切面编程提供了强大支持,通过将业务逻辑从系统服务中分离出来,实现了内聚开发。系统对象只做它们该做的业务逻辑,它们不负责其他系统问题。4. 容器Spring是一个容器,是因为它包含并且管理系统对象的生命周期和配置。你可以通过配置来设定你的Bean是单一实例,还是每次请求产生一个实例,并且设定它们之间的关联关系。Spring有别与传统的重量级EJB容器,这些容器通常很大,很笨重。5. 框架Spring实现了使用简单的组件配置组合成一个复杂的系统。在Spring中,系统中的对象是通过XML文件配置组合起来的。并且Spring提供了很多基础功能,这是开发人员能够专注于开发应用逻辑。所有Spring的这些特性使你的代码更加清晰,更容易管理,更容易测试。这些也为在大Spring框架下开发各种子框架打下了很好的基础。42.2.2 Struts2简介Struts是Apache Jakarta项目组的一个开源项目,是MVC模式的一个良好实现。它利用控制器分离模型和视图,把用户界面和事务逻辑进行分离,避免其互相纠缠,从而简化了程序开发者的开发和维护工作。它使每一部分的细节都隐藏在接口后面,减少了代码耦合,提高了系统的灵活性,重用性和可维护性。Struts2体系结构如图2-2所示。图2-2:Struts2体系结构侯国照,李延斌,秦国,王金彪、中国高新技术企业2008年17期、2010年5月26日Struts2 的工作机制:1. 客户端初始化一个指向Servlet 容器(例如Tomcat)的请求。2. 这个请求经过一系列的过滤器(Filter)(这些过滤器中有一个叫做ActionContextCleanUp的可选过滤器, 这个过滤器对于Struts2和其他框架的集成很有帮助)。3. 接着Filter Dispatcher被调用,Filter Dispatcher询问ActionMapper来决定这个请求是否需要调用某个Action。4. 如果ActionMapper决定需要调用某个Action, Filter Dispatcher把请求的处理交给Action Proxy。5. Action Proxy通过Configuration Manager询问框架的配置文件,找到需要调用的Action 类。6. Action Proxy创建一个Action Invocation的实例。7. Action Invocation实例使用命名模式来调用,在调用Action的过程前后,涉及到相关拦截器(Interceptor) 的调用。8. 一旦Action 执行完毕,Action Invocation负责根据struts.xml 中的配置找到对应的返回结果。返回结果通常是(但不总是,也可能是另外的一个Action链) 一个需要被表示的JSP 或者Free Marker的模版。在表示的过程中可以使用Struts2框架中继承的标签。在这个过程中需要涉及到ActionMapper。52.2.3 Hibernate简介Hibernate是一个开放源代码的对象关系映射框架,它对JDBC进行了非常轻量级的对象封装,使得Java程序员可以随心所欲的使用对象编程思维来操纵数据库。 Hibernate可以应用在任何使用JDBC的场合,既可以在Java的客户端程序使用,也可以在Servlet/JSP的WEB应用中使用。Hibernate的核心接口一共有5个,分别为:Session、SessionFactory、Transaction、Query和Configuration。这5个核心接口在任何开发中都会用到。通过这些接口,不仅可以对持久化对象进行存取,还能够进行事务控制。下面对这五个核心接口分别加以介绍。1. Session接口:Session接口负责执行被持久化对象的CRUD操作(CRUD的任务是完成与数据库的交流,包含了很多常见的SQL语句。)。但需要注意的是Session对象是非线程安全的。同时,Hibernate的session不同于JSP应用中的HttpSession。这里当使用session这个术语时,其实指的是Hibernate中的session,而以后会将HttpSesion对象称为用户session。2. SessionFactory接口:SessionFactory接口负责初始化Hibernate。它充当数据存储源的代理,并负责创建Session对象。这里用到了工厂模式。需要注意的是SessionFactory并不是轻量级的,因为一般情况下,一个项目通常只需要一个SessionFactory就够,当需要操作多个数据库时,可以为每个数据库指定一个SessionFactory。3. Configuration接口:Configuration接口负责配置并启动Hibernate,创建SessionFactory对象。在Hibernate的启动的过程中,Configuration类的实例首先定位映射文档位置、读取配置,然后创建SessionFactory对象。4. Transaction接口:Transaction接口负责事务相关的操作。它是可选的,开发人员也可以设计编写自己的底层事务处理代码。5. Query和Criteria接口:Query和Criteria接口负责执行各种数据库查询。它可以使用HQL语言或SQL语句两种表达方式。2.2.4 SSH整体架构简介前文对SSH 在J2EE项目所代表的三种框架,既Spring 、 Struts2 和Hibernate分别进行了简介,在本小节中将对SSH整体架构进行简要介绍,SSH整体架构如图2-3所示。 图2-3:SSH整体架构反其道、百度百科、2010年5月26日Struts对Model,View和Controller都提供了对应的组件。在上图中,ActionServlet,这个类是Struts的核心控制器,负责拦截来自用户的请求。Action这个类通常由用户提供,该控制器负责接收来自ActionServlet的请求,并根据该请求调用模型的业务逻辑方法处理请求,并将处理结果返回给JSP页面显示。典型的J2EE三层结构,分为表现层、中间层(业务逻辑层)和数据服务层。三层体系将业务规则、数据访问及合法性校验等工作放在中间层处理。客户端不直接与数据库交互,而是通过组件与中间层建立连接,再由中间层与数据库交互。 表现层是传统的JSP技术,自1999年问世以来,经过多年的发展,其广泛的应用和稳定的表现,为其作为表现层技术打下了坚实的基础。中间层采用的是流行的Spring+ Hibernate,为了将控制层与业务逻辑层分离,又细分为以下几种。WEB层,就是MVC模式里面的“C”(controller),负责控制业务逻辑层与表现层的交互,调用业务逻辑层,并将业务数据返回给表现层作组织表现,该系统的MVC框架采用Struts。Service层(就是业务逻辑层),负责实现业务逻辑。业务逻辑层以DAO层为基础,通过对DAO组件的正面模式包装,完成系统所要求的业务逻辑。DAO层,负责与持久化对象交互。该层封装了数据的增、删、查、改的操作。POJO层,持久化对象。通过实体关系映射工具将关系型数据库的数据映射成对象,很方便地实现以面向对象方式操作数据库,该系统采用Hibernate作为ORM框架。Spring的作用贯穿了整个中间层,将WEB层、Service层、DAO层及POJO层无缝整合,其数据服务层用来存放数据6。 第三章 人才测评系统分析第三章人才测评系统分析3.1 系统需求分析3.1.1 功能需求在人才测评系统的人才测评模块中要求:普通用户通过验证并登陆系统后可以进行免费测试、查看测试报告、查看历史测试和完善个人资料。专业用户通过验证并登陆系统后可以查看系统安排的测试、进行免费测试、查看测试报告、查看历史测试、获取更多相关测试和完善个人资料。3.1.2 可行性分析从硬件上看,计算机硬件速度现在已经不是问题,大容量高速度的硬盘十分普遍,同时网络速度的提高,这些为系统的运行打下坚实的基础。从软件的角度上讲,数据库技术已经相当成熟(目前用得比较多的有SQLServer,Oracle等),并且处理能力也非常强。同时,用基于Struts2框架进行开发,对数据持久化操作采用Hibernate框架。Struts2作为MVC设计模式的开源框架将视图、模型及控制很好的进行了分割,减少了耦合,提高了代码的重用性。Hibernate框架完全基于对象关系模型,开发过程中去掉了很多烦琐的工作,使开发者可以集中到业务问题的实现上。通过标准的Web界面来实现系统所有功能。3.1.3 运行需求1. 硬件要求:CPU PentiumII,256MB内存以上。2. WEB服务器:Tomcat等WEB服务器。3. 系统运行数据库:MySql、SQL Sever、Oracle等数据库。3.2 用例图图3-1:人才测评模块用例图 人才测评模块主要的功能是为测试人员提供人才测评,并提供测试报告结果的查看。3.3 流程图根据人才测评模块的用例图,将本模块的主要功能进一步细化为流程图。系统提示流程图,如图3-2所示。图3-2:系统提示流程图用户在成功登陆系统后,若有需要进行的测试安排,系统会给出相应的提示信息。用户根据提示选择相应的测试安排进行测试,当测试结束时,系统会自动存储测试结果。同时,若此测试允许用户查看测试报告,则用户可以查看本次测试的结果。免费测试流程图,如图3-3所示。图3-3:免费测试流程图用户在成功登陆系统后,点击免费测试,然后选择相应的免费测试进行测试,当测试结束时,用户可以查看本次测试的结果,但是系统不会存储测试报告。 第四章 人才测评系统设计第四章人才测评系统设计4.1 模块设计根据上一章对人才测评系统的分析,在设计系统时,将系统大致分为三个模块,如图4-1所示。图4-1:人才测评系统模块设计图系统主要包括系统管理、人才测评和测评管理三大模块。1. 系统管理模块主要有用户注册、增加用户、删除用户、用户登录、修改密码、修改用户信息和修改个人信息等功能。2. 人才测评模块分为四个子模块,关于我们、测试、 历史测试和系统提示。测试子模块又分为选择测试题和参与测试两个功能。3. 测评管理模块主要包括测试题库管理、测试安排和查看测试报告三个子模块。(1) 测试题库管理模块包括增加、删除和修改测试题库。(2) 测试安排子模块主要功能是设置测试安排,包括选择试卷、时间设定、人员设定和测试结果权限设定,此外还提供测试安排查看。4.2 包和类设计包图如图4-2所示。1. com:xmu:software:action包存放Struts2 Action类,主要为AssessmentAction类,主要负责接收来自ActionServlet的请求,并根据该请求调用模型的业务逻辑方法处理请求,并将处理结果返回给JSP页面显示。2. com:xmu:software:service包存放AssessmentService类和AssessmentServiceImpl类,负责实现业务逻辑。业务逻辑层以DAO层为基础,完成系统所要求的业务逻辑。3. com:xmu:software:common包存放一些公共类。4. com:xmu:software:dao包里的userDAO类、arrangeDAO类、resultDAO类和bankDAO类,实现数据库对应表的添加、查询、删除和更新。5. com:xmu:software:pojo包里主要存放系统的实体类及其数据库映射文件。User类、arrange类、result类、bank类是对用户、测试安排、测试结果、试卷各实体的抽象。它包含了实体的所有属性及初始化构造方法gettersetter()方法,每个类映射数据库里相应的实体表,每个类都有相应的lc.hbm.xml映射文件。6. com:xmu:software:vo包存放用于页面显示的视图类,包括ArrangeVo、BankVo类、ChooseItem类、QuestionnaireVo类、ResultItem类和ResultVo类。图4-2:包图类图如图4-3所示。1. AssessmentAction类,主要负责接收来自ActionServlet的请求,并根据该请求调用AssessmentServiceImpl提供的业务逻辑方法处理请求,并将处理结果返回给JSP页面显示。2. AssessmentServiceImpl类提供业务逻辑方法的接口,AssessmentService类实现了AssessmentServiceImpl类的所有接口,并以DAO层为基础完成系统所要求的业务逻辑。3. userDAO类、arrangeDAO类、resultDAO类和bankDAO类实现数据库对应用户表、测试安排表、测试结果表和试卷表的添加、查询、删除和更新。4. User类、arrange类、result类、bank类是对用户、测试安排、测试结果、试卷各实体的抽象,每个类映射数据库里相应的实体表。5. ArrangeVo、BankVo类和ResultVo类用于测试安排、时间和测试结果的页面显示。QuestionnaireVo类、ChooseItem类和ResultItem类用于试卷的页面显示,QuestionnaireVo类用于存放试卷,ChooseItem存放试卷题目,ResultItem用户存放试卷结果。图4-3:类图4.3 顺序图设计获取系统提示顺序,如图4-4所示。图4-4:获取系统提示顺序图获取测试详情顺序图,如图4-5所示。图4-5:获取测试详情顺序图获取免费测试详情,如图4-6所示。图4-6:获取免费测试详情进行测试顺序图,如图4-7所示。图4-7:进行测试顺序图获取历史测试顺序图,如图4-8所示。图4-8:获取历史测试顺序图获取免费测试,如图4-9所示。图4-9:获取免费测试4.4 数据库设计根据对人才测评系统的分析,系统主要的对象有测试安排、试卷、用户和测试结果四个对象,对应到数据库即为测试安排、试卷、用户和测试结果四张表。表4-1:测试安排arrange编号字段字段类型长度名称说明1arrangeIdint11测试安排ID主键2arrangeNamevarchar255测试安排名称3summaryvarchar255描述4startTimedatetime起始时间5endTimedatetime截止时间6rightint11权限7flagint11测试安排是否被删除8bankIdint11试卷ID外键表4-2:试卷bank编号字段字段类型长度名称说明1bankIdint11试卷ID主键2bankNamevarchar20试卷名称3modifyTimedatetime修改时间4createTimedatetime创建时间5typeint11试卷类型6flagint11测试结果是否可查看7summaryvarchar255试卷描述8modeint11试卷模式9stateint11试卷状态10saveAddressvarchar255保存地址表4-3:用户user编号字段字段类型长度名称说明1userIdint11用户ID主键2userNamevarchar20用户名称3validTimedatetime有效时间5userRightint11用户权限6flagint11用户是否删除7passwordvarchar255用户密码8loginNamevarchar255登录名称9emailvarchar255邮件地址10arrangeIdint11测试安排ID外键表4-4:测试结果result编号字段字段类型长度名称说明1resultId int11测试结果ID主键2resultvarchar255测试结果名称3timedatetime创建时间4arrangeNamevarchar11测试安排名称5bankNamevarchar255试卷名称6loginNamevarchar255登录名称7flagint11测试结果是否可查看8summaryvarchar255描述上述四张实体表之间的映射关系如图4-10所示。图4-10:实体表间的映射关系 第五章 人才测评系统实现第五章人才测评系统实现5.1 系统开发环境开发工具:MyEclipse开发语言:JAVA开发平台:Windows XP数据库平台:MYSQL关键技术如表5-1所示。表5-1:关键技术名称版本作用Struts2.0主要应用于表现层Spring2.5主要实现依赖注入,主要应用与业务逻辑层的设计Hibernate3.2主要用于实现数据库的映射,数据库的持久化。JDK1.6.0系统架构如图5-1所示。图5-1:系统架构图5.2 Spring文件的配置本系统通过applicationContext.xml对Spring进行配置。用以获取访问数据库的session对象,用于设置所连接的数据库,用于告知Hibernate应该读取那个映射文件,通过上述配置实现对Hibernate资源的管理。Spring没有直接管理事务,但是它提供很多事务管理器,将事务管理的责任委托给使用JTA或持久化机制的某个特定平台的事务实现。本系统由于持久化机制是Hibernate,所以通过配置来使用HibernateTransactionManager来管理事务。applicationContext.xml具体配置如图5-2所示。图5-2:applicationContext.xml5.3 Struts2文件的配置通常,所有的MVC框架都需要WEB应用加载一个核心控制器,对于Struts2框架而言,需要加载FilterDispatcher,只要WEB应用负责加载FilterDispatcher,FilterDispatcher将会加载应用Struts2框架。在Struts2 web.xml文件中通过配置加载FilterDispatcher后,还需要配置该Filter拦截的URL,通过让该Filter拦截所有的用户请求。web.xml的具体配置如图5-3所示。图5-3:web.xml用户请求通过控制器来处理和转发,而控制器通过获得一些描述用户请求路径和Action映射关系的配置信息来决定用户请求如何转发,这些配置信息都存放在strutsxml中。strutsxml配置文件是整个系统运行的核心。它主要负责管理WEB应用中业务控制器Action的映射,以及Action包含的Result定义,还有Bean的配置、常量的配置、包的配置、拦截器的配置等。在默认情况下,Struts20会自动去加载WEB应用WEBINFclasses目录下的strutsxml文件,并对文件中配置的资源进行扫描7。struts.xml具体配置如图5-4所示。图5-4:struts.xml5.4 Hibernate文件的配置用于配置数据库连接属性以及Hibernate运行时所需的各种属性,包括指定数据库的驱动程序、连接数据库的URL、连接数据库的用户名和口令、数据库方言、数据库名等8。Hibernate具体配置如图5-5所示。图5-5:Hibernate配置5.5 数据库的配置本系统设计使用Mysql开发,数据库名为tas。数据库里创建用户信息表user、测试安排表arrange、试卷表bank和测试结果表result,每个表中要求能纪录相应的基本信息。tas数据库如图5-6所示。图5-6:tas数据库5.6 控制器的实现在Struts2应用框架中,核心控制器是由Struts2框架本身所提供,开发人员的重点主要是负责具体业务处理的Action类。用户开发的每个Action类负责处理一项具体的业务通常的任务包括:接收用户请求根据用户请求调用合适的模型组件来执行响应的业务逻辑、获取业务逻辑执行结果、根据当前状态以及业务逻辑执行结果选择合适的视图组件返回给用户。5.7 系统WEB层的实现WEB层主要采用JSP技术,结合Struts2提供的标签库来实现。但JSP页面中几乎不包含任何的脚本程序,只是单纯地传送数据以及接收和显示返回的数据,这样有利于视图层和业务逻辑层的解耦。5.8 系统部署系统部署如图5-7所示。图5-7:系统部署图1. 客户端按照用户类型的不同主要有四类,即管理员用户、专业用户、人力资源用户和普通用户。2. WEB服
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 电梯收购合同与收购协议
- 湿地鱼池承包协议书模板
- 股东实物作价入股协议书
- 股东利润分成协议书模板
- 灯箱合作合同协议书模板
- 私人暖气模板合同协议书
- 村集体大楼租赁合同范本
- 项目签合同前的居间协议
- 长沙离婚协议补充协议书
- 碧桂园转让酒店合同范本
- 中耳炎疾病的护理
- 2025江苏扬州大数据集团子公司管理人员招聘1人笔试备考题库及一套完整答案详解
- 高三一轮复习学案 铁及其重要化合物(课中案)
- 浙江大学:AI大模型如何破局传统医疗
- 单刀赴会课本剧:演绎三国英雄的高光时刻
- 同等学力申硕临床医学学科综合水平考试历年真题题库-上(A1题)
- 2025 秋外研英语八上单元重点知识清单Unit 1
- 《区块链技术与应用》课件
- DB13-T 1545-2025 预拌混凝土质量管理规程
- 《医疗机构药学服务课件》
- 生态修复中的环境保护监理措施
评论
0/150
提交评论