用户登录  |  用户注册
首 页毕业论文毕业设计下载定做交易过程截图支付宝在线支付
当前位置:完美毕业网毕业论文摄影测量与遥感

高校网站群内容管理系统的设计与实现

论文代写发表联系:点击这里给我发消息QQ212181988
一键分享拿折扣:

 当前国内几乎所有的高校都有自己的门户网站,多数院系、职能部门甚至研究所实验室都建设了各自的网站。大多数的网站主要功能基本相同,主要是用来发布通知信息,但是由于使用的技术、开发人员的素质、开发经费等多种方面的原因导致门户网站的质量等差异较大。同时,分散建设的网站没有经过统一的规划,独立存在,不利于统一管理,不能进行跨站点信息共享和搜索,同时也存在着大量的信息安全隐患。

本文以高校网站集成统一管理为应用背景,对高校网站群现状分析,对网站群内容管理系统的技术进行了解,结合高校组织机构与用户特点以及信息化建设的实际需求,设计实现了一套能够部分兼容现有站点的高校网站群内容管理系统。首先介绍了网站群管理系统及相关技术,然后根据具体的需求对系统进行需求分析,对系统的功能进行划分,系统的基本功能是对高校的子站群与站点的内容进行统一管理,使不同职能部门的用户通过统一登录界面进行认证登录,然后根据权限管理网站的信息内容,实现不同站点间内容的跨站共享。在此基础上,对系统按照划分的功能模块进行设计,重点阐述了用户统一登录模块、系统配置管理模块、组织机构与用户管理模块、站群配置模块以及站点内容管理模块的设计,其中本文的核心站点内容报送与接收模块能够实现对已有的非根据内容管理系统标准模板或标准数据库创建的站点进行兼容,支持事务性信息报送共享与实时报送共享两种模式。根据系统详细设计,并采用SSH集成框架对系统进行了实现。
最后搭建测试环境,对系统的功能进行了详细的测试,采用Loadrunner系统进行性能与压力测试,测试结果表明本文实现的高校网站群内容管理系统无论在功能还是性能上均达到了设计的目标和要求。
 
 
关 键 词:内容管理系统;网站群;LDAP ;SSH
论文类型:应用研究
 
 
 
 


Title: Design and Implementation of Website Group Content Management System for University
Professional Fields: Software Engineering
Applicant: Ni Zhao
Supervisor: Assoc. Prof. Li Zhu
Almost all the domestic universities and colleges have their portal website and most of their departments, schools, research institution even some laboratories have their own website to release news. even though most of their websites have the same or similar function and content, but the qualitiy and performance of those websites are obviously different for the various factors,such as the used development techniques, the capability of developer and development budget for website and so on. In addition, because of the lack of unified planning in advance, different websites are isolated from each other so that it is hard to manage,search and share those news between different websites, meanwhile, those websites face a lot of security risks.
 
Based on the university website group, in this thesis the present situation of university and college website group is analyzed,and some critical technologies of website group content management system are studied. First the website group management system and some related technologies are introduced, and then requirement analysis of the whole system is completed in which the system is devided into several modules according to the specific requirements.According to the characteristics of university and college organization and their users and the actual needs of informatization construction, a website group content management system for university and college(UCWG-CMS) is designed and implemented.The basic funcitons of UCWG-CMS are to unifiedly manage all sub-websites content, to make users to log in through a unified interface and to easily share the content between different sites.Based on the privious requirement analysis, the system is designed in accordance with the division of function module in detail. Design and implement of  the unified user login module, the system configuration module, the user and institution management module, the website group configuration module and content management module are described respectively. SSH integration framework is used in the system implement.  
 
Finally a test environment is built to complete function test of the whole system, and  Loadrunner is used to implement performance and pressure test. The test results show that the implementation of college website content management system in both the function and performance has reached the design target and satisifies user requirements.
 
 
KEY WORDS: Content Management System; Website Group; LDAP; SSH
TYPE OF THESIS: Application research
 
 


 
目  录
声  明
 
 


CONTENTS
1  Preface1
  1.1  Significance and Background1
  1.2  Glance of Current Research Status1
  1.3  Main Research Contents of Thesis3
  1.4  Organization of Thesis4
  2.1  Brief introduction of B/S sytem architecture5
  2.2  Introduction of MVC design pattern5
2.3  Introduction of implemented technologies6
2.3.1  SSH implement framework6
2.3.2  User directory service based on LDAP 10
2.3.3  Introduction of SOAP12
2.4  Summary of this chapter12
 3.1  Functional requirement analysis14
3.1.1  Configuration for System14
3.1.2  Configuration for Users and Institutions16
3.1.3  Configuration for Website group18
3.1.4  Website group content management19
3.2  Non-functional requirement analysis22
3.3  Summary of this chapter23
4  Design and implementation of University Websits Group CMS24
  4.1  Overall system design24
    4.1.1  Design of System overall architecture 24
4.1.2  Unified identity authentication and login25
  4.2  Design and Implementation of unified login interface module25
    4.2.1  Design of unified login interface module 25
4.2.2  Implementation of the unified login authentication system interface 28
4.3  Design and Implementation of system configuration module33
4.3.1  Design and Implementation of pre-defined data configuration34
4.3.2  Design and Implementation of workflow configuration34
4.3.3  Design and Implementation of parameters configuration35
4.4  Design and Implementation of users and institution configuration module36
4.5  Design and Implementation of website group configuration37
4.6  Design and Implementation of content management38
4.6.1  Design and Implementation of content items configuration38


4.6.2  Design and Implementation of content management41
4.6.3  Design and Implementation of message sending and receiving44
4.6.4  Design and Implementation of web content transfering database45
4.7  Summary of this chapter47
5  Testing of the University Websits Group CMS48
  5.1  Introduciton of the configuration for running system48
  5.2  Functional testing of University Websits Group CMS49
    5.2.1  The system main interface49
5.2.2  Testing of the users and institutions configuration50
5.2.3  Testing of the users and website content management51
5.2.4  Performance testing of University Websits Group CMS55
5.3  Summary of this chapter56
6  Conclusions and Suggestions57
  6.1  Conclusions57
  6.2  Suggestions57
References59
Acknowledgements60
Declaration
 
 
 
即可


1绪论
随着计算机技术的不断发展,信息化技术应用越来越广泛,如电子商务、电子政务、信息管理、信息检索等。在不同的领域和行业的应用也越来越深入,信息化给人们带来了越来越多的便利。大量的企业、机构、学校以及个人均搭建自己的门户网站、信息系统、管理系统等发布信息、提供服务以及提高管理运行效率等。甚至一些机构不同的部门都有自己的门户网站、信息系统等,其中以高校与政府部门最有代表性,通常高校都有众多的院系,每个院系都会根据需要开发自己的门户系统进行信息发布,也可能开发自己的信息系统,管理系统,政务系统等,以提高办公管理效率。
在带来便利的同时,相应的问题也随之出现,不同的院系开发的系统功能各异,开发者的水平不同,开发出来的系统的功能、性能以及安全性也就各异。同时,众多的门户系统、管理系统也使用户感到难以适应,而对于系统的管理和维护人员来说,不同系统的差异给系统的管理带来巨大的困难。面对诸如此类的问题,网站群的概念也就随之出现,本文针对高校的特点,研究开发了一套面向高校的网站群内容管理系统,使高校具有统一的门户,同时又能使用户访问、使用以及查找信息更方便快捷,实现信息的快速推送与自动化办公,保障系统的高的安全性与可靠性,使网站群能够统一进行管理和维护。在降低管理运行成本,提高用户体验以及易用性,系统安全等方面具有积极意义。
1.2 高校网站群现状
当前大多数高校信息系统的现状是各级院系及职能部门独立建设网站,由于使用者对用途的要求、开发者的水平、设计思想与技术等条件限制,这些网站性能各异,实际上是一群孤立的网站,还不能称为网站群。具有以下特点[1][2]
1)采用不同的技术,维护困难,运行成本高。通常情况下网站建设方和用户对网站开发技术缺乏了解,从而在建设网站时往往不会对开发者提出具体的约束和明确要求,或者是不同机构根据自身的需要对网站开发方的要求不同,因此,造成各个网站采用各种不同的技术方案。网站部署运行在 Windows 和 Linux 等不同操作系统上,采用的开发语言有Java、 JSP、ASP .Net、PHP、CGI和 Ruby 等,从而造成各个部门的网站很难由统一的信息部门进行运行维护。因此只能招专人进行运行维护与升级,从而增加运维成本。
2)缺乏统一的运行维护、存在较高的安全风险。各个部门独立建设的网站由于缺乏统一的信息化部门的管理维护,而网站在建设时基于节省成本的考虑或者是缺少专业技术人员进行维护,在网站上线使用后每月或者很少有技术维护,从而给黑客以可乘之机,网站后台的密码可能泄露或者漏洞被利用,被蠕虫病毒感染,或者扩散病毒等。甚至恶意黑客发布不良信息,给高校和网站建设方带来较严重的负面影响[3]
3)网站各自独立,内容信息资源很难共享。各个机构在建设网站时,多数都有类似的功能需求,如用户管理、权限管理、信息发布、访问统计、信息检索、投票和问卷调查等[4]。由于网站建设方相互独立,缺乏沟通和协调,从而造成网站功能模块重复建设,部署在不同的服务器,设计采用不同的数据库使网站中的信息、模板和多媒体资源等也不能互通共享。此外,早期建设的网站,因为技术方面的原因不能更新新的模块,不能满足新的Web标准,很多时候升级需要重新进行开发,增加开发成本。
4)主要用于发布信息,缺乏与用户的互动。网站开发者基于网站安全性与性能的考虑,将会采用一些相对保守的技术手段,例如对网页内容进行静态化,主要进行信息提供。事实上,网站作为一个窗口,作为联系网站建设方与用户的桥梁,在以用户为中心的WEB2.0时代,如果网站不能跟用户进行互动,接受用户的诉求,靠单纯的提供发布信息将很难吸引到用户,不利于与用户的互动[5]
5)没有统一规划,发挥作用极其有限。各个网站在建设的时候缺乏统一的规划,各自为政,没有配套的站群管理系统的支持,各个网站之间形成事实上的信息孤岛,发布在网站上的信息难以形成高层次的汇总与处理[10]。例如,通过对学生关注网站的信息进行数据挖掘来分析学生的关注分布,通过对学生的调查反馈来调整和改进教师的教学方式,提供意见反馈等。
多个网站根据统一的规划进行建设,实现信息共享形成网站群。网站群按照其隶属关系进行组织,既可以统一管理,也允许独立进行内容管理、并能对自成体系的网站进行整合。根据网站群建设的范围和采用的技术的发展过程,我国的网站群简单来说可以归纳为五个发展阶段[7][8]
第一阶段:网站链接相互嵌套阶段。在这一阶段网站群的概念及建设意识开始萌芽。网站建设单位已经产生了信息共享的需求并希望进行整合的愿望,上级单位要求各下属单位网站通过链接的方式来分享发布其信息内容。然后上下级机构之间的各个网站设计风格、栏目划分、内容信息等均是各自独立。因此,此阶段的站群特点是完全未经规划、没有进行统一管理,事实上是各自独立,内容以链接形式分享。
第二阶段 :外观设计统一阶段。这一阶段提出了站群建设方法论。网站的建设单位已经有意识地对下属网站从栏目规划、页面板式与布局,功能模块等从总体层面进行规划,在风格上保持上下一致。在进行具体的开发时,构建的各个网站处于平等关系状态,没有主从关系,各个网站仍然相互独立,信息没有实现共享,没有统一的管理。因此,这阶段的网站群建设只是具有统一的外表和风格,事实上各网站间的信息仍然互相孤立,不能形成有效的统一管理,本质上还是孤立的网站。
第三阶段:业务整合阶段。这个阶段主要是对网站群建设的技术进行探索。网站建设单位意识到并根据业务需要,整合分散在不同物理位置的独立网站进行统一管理,实现业务数据的站点间共享。在这个阶段的主要特点是借助很多如Tong Link、 BizTalk的第三方产品来管理、对网站信息进行维护,通过数据同步的方式来整合存在的各子站点。采用这种技术手段整合的网站群存在很大的缺陷,比如信息只能通过被动的方式进行同步,信息共享是单向的。而实际上各个网站的后台信息管理系统各自独立,从而使各网站的信息共享不充分,管理也比较复杂。在检索信息时只能检索当前网站的信息,不能实现基于网站群的跨站联合检索。
第四阶段:网站群建设系统化阶段。这一阶段网站群建设发展迅速并快速繁荣,网站群的模式日趋稳定、功能逐渐完善,开发技术已趋于成熟,开发出了诸多基于网站群模式的内容管理系统(WG-CMS)。通过网站群内容管理系统(WG-CMS),实现建设单位各个网站的统一规划、统一实施或根据需要进行分步实施的建设要求,网站建设趋于条理化、系统化。在WG-CMS中,所有被管理的网站运行在同一个管理平台上,管理员登录时通过统一授权平台,实现对子网站的统一认证管理,对网站的信息均按照权限可进行独立维护,但数据集中存储于同一数据库或者是同构分布式数据库中。全文检索可以搜索所有的子网站的信息。
第五阶段:网站群系统云阶段。网站群建设发展的高级阶段,随着云计算的提出以及技术的发展,许多新的需求逐渐提出,将网站群与云计算结合产生了云计算下的网站群建设理念。云阶段网站群建设的核心是对网站群数据实现云存储,各子站在数据结构上充分独立,各子站都能根据需要差异性地实现自己的数据结构并将数据独立存储。这一概念挑战前一阶段的采用统一数据库存储所有子站数据的建设模式,将网站群技术导向一个新的发展方向。
目前,大多数高校的站群均处于第一、二阶段,即在校级门户网站上,通过链接的方式访问院系及职能部门的门户网站,从而实现资源信息的共享。由于院系及其他职能部门的门户网站是独立构建与存在。因此,对于站群的内容无法进行统一管理,也就无法进行信息推送与自动化办公,通常通过各个门户网站的管理员间邮件沟通,从而实现信息的推送与发布。
本文主要从网站群内容管理系统相关技术、高校站群内容管理系统的需求分析,系统设计与实现,开发及测试等几个方面分别进行了介绍。主要内容如下:
1)系统分析与设计
本文主要针对高校的网站群内容管理系统进行分析,通过对当前网站群建设存在的“信息孤岛”问题、管理不方便的问题以及不能自动化办公等诸多不足之处的分析,意在建立一个可以完整的支持对站群以及子站群进行管理的内容管理系统。在需求分析时,通过系统管理员、信息管理员、站点管理员等多个角色进行需求分析,确定了本系统应具备的功能和软硬件配置等,系统采用B/S架构,针对不同站点范围接口不同的问题,设计采用统一的登录认证接口进行登录。
2)系统的实现
按照需求分析进行设计及实现,包括对系统功能的具体设计和实现、对数据库选型设计和实现,重点对高校网站群内容管理模块进行详细设计和实现。
3)系统的测试
通过对系统进行单元测试、集成测试、用户测试、性能测试等,并对测试结果进行评估,站群内容管理系统满足了组织机构与用户管理、数据模型管理、站群内容管理和工作流程管理等功能,并能在很大程度上满足性能要求,目前该系统已经上线运行。
为了阅读的清晰直观,论文将按照以下结构进行组织:
第一章 绪论
介绍了本文主要研究内容的意义和应用背景,介绍了目前国内外站群以及站群内容管理系统研究现状。同时说明了本文的主要研究内容和组织结构等。
第二章 高校网站群内容管理技术基础
高校网站群以及站群内容管理系统业务进行详细的分析,阐述系统的主要需求,以及系统为了实现这些需求而必须解决的主要问题。
第三章 高校网站群内容管理系统分析
阐述系统的软件开发过程对系统的需求进行了详细的分析,在需求分析的基础上,对系统的各个功能模块进行了具体的设计,对核心的技术以及算法进行了详细的介绍。
第四章 高校网站群内容管理系统的设计与实现
对系统的设计原则、运行环境进行说明,在介绍系统总体设计体系结构的基础上,按照子系统分别阐述各自的主要功能及使用的关键技术,并对数据库设计和集成设计进行了介绍。
第五章 高校网站群内容管理系统实现结果与性能测试
根据需求分析以及系统设计,设计测试用例,对系统的功能,性能进行了全面的测试。
第六章 结论与展望
总结了本文的研究内容和得出的结论,并对本文的一些不足之处提出了新的展望,为以后的工作指明了方向。
 


2高校网站群内容管理技术基础
本章重点介绍站群内容管理技术理论,确定了站群内容管理系统的B/S架构,并基于SOAP和SSH开发技术,对如何实现站群内容管理系统进行了技术分析。
2.1 B/S架构
B/S是浏览器Browser和服务器Server架构的简称,其客户端是采用通用的浏览器模式。B/S架构随着Internet技术的发展而迅速兴起,是在C/S结构基础上产生的一种变化或者改进[13]。在这种架构下,用户工作界面是通过浏览器来实现,用户操作接口通过web页面的形式进行展示,前端(Browser)也称客户端只是实现极少部分事务逻辑,主要的功能事务逻辑通过请求与相应的方式由服务器端(Server)实现并与浏览器端的用户进行交互,从而形成所谓三层结构。通过这种方式,大大简化了客户端电脑载荷,即所谓的瘦客户端,减轻了系统维护与升级的成本和工作量,降低了用户的总体成本,从而使海量的用户应用成为可能。
在当前的技术发展阶段,在局域网内建立部署B/S结构的网络应用,并通过Internet/Intranet连接访问数据库对数据进行管理[18],相对易于控制和把握,安全性也能有效保证。基于B/S架构的系统通常是一次性开发到位,不同的用户只要通过网络既能够在不同的地方以不同的方式访问系统并进行数据库操作;同时能够有效对数据平台和管理访问权限进行交互,从而较好地保证了服务器数据库的安全。随着Java语言和开发平台的出现和不断发展完善,开发B/S架构的系统,特别是Web网站非常快捷高效。
2.2 MVC模式
MVC 是一种使用 MVC(Model View Controller模型-视图-控制器)设计创建 Web 应用程序的模式[11][12],由三个核心部分组成:1)Model(模型)表示应用程序核心比如数据的处理与业务处理、数据库记录列表等;2)View(视图)显示数据,即显示数据库记录,通过友好的用户界面将数据进行呈现;3)Controller(控制器)处理输入,即将写入数据库记录或者控制业务跳转。MVC 模式同时提供了对 HTML、CSS 和 JavaScript 的完全控制,其组件关系如图2-1所示。
 
图21  MVC组件关系图
视图是用户能够看到的界面,用户能够通过界面进行交互操作早期的web视图是由HTML元素组成的界面,随着技术的发展,在现在的web程序中HTML依旧在视图的基本组成部分但也出现了许多新的技术例如Web servicesAdobe Flash以及XHTMLXML/XSLWML等标识语言。通过MVC应用程序能够处理很多不同的用户视图在视图中对业务不进行处理,只是进行数据的提交以及数据的显示并且接收用户的操作进行对应的响应
模型表示业务与数据的处理规则。在MVC的三个部件中,模型处理的事务是最多也最复杂的可以采用ColdFusion ComponentsEJBs之类的构件对象来跟数据库进行交互和处理数据数据从模型返回是处于中立状态模型与数据格式无关,通过这种方式模型能多个视图交互并提供数据,模型代码只需写一次就可以被多个视图很方便地重用,大大减少了重复代码,使程序易于维护
控制器起到控制和调遣作用,即接收用户输入的数据根据用户的操作调用模型和视图去完成用户的需求,所以Web页面中的超链接被点击HTML表单发送时,控制器不进行任何响应,只是根据接收请求决定调用哪个模型构件对请求进行相应的处理,然后再确定跳转到哪个视图。
2.3系统实现技术基础
2.3.1 SSH技术框架
根据职责可以将SSH [14]框架分为四层,分别为表示层、业务逻辑层、数据持久层和域模块层。通过分层开发人员可以在短时间就能够搭建可复用性好、结构清晰且易于维护的Web程序。在SSH中,Struts是系统的基础架构,负责MVC的分离,Struts框架的模型部分用于控制业务跳转,跟Hibernate框架进行结合,而Spring的主要功能是管理struts和hibernate。主要处理流程是根据需求采用面向对象的思想进行分析然后建立一些面向对象的模型,最后根据模型对进行编码实现Java对象,为对象编写数据访问对象接口,并通过Hibernate框架对DAO进行具体实现,实现的DAO类主要将数据库的表对象与程序的实体类对象进行转换, Spring对struts和hibernate[15]进行管理,实现无缝集成,SSH的框架如图2-2所示。
采用SSH框架的系统基本业务流程是:Hibernate的持久层将对象进行映射实现跟数据库中表对象数据的交互,将数据模型静态化,当DAO组件发起数据请求后,持久层进行处理并返回结果。在表现层中,用JSP页面提供给用户进行操作并与系统进行交互,接收请求(Request)并传送相应的响应(Response),然后Struts根据其配置的XML文件将ActionServlet接收到的Request分配给指定的Action进行响应。Spring IoC容器作为管理组件与服务组件在业务层中功能是向Action提供业务模型(Model),进行切片和反向映射。采用SSH作为开发模型不仅有效地将View、Control与Model进行彻底分离,而且还将业务逻辑层与持久层进行分离。从而保证了前端变化,模型层只需要进行很少的改动甚至不做改动,而当数据库发生变化也不会对前端造成影响,使系统的可复用性大大提高。不同的层之间低耦合度有利于团队成员并行工作,使开发效率大大提高。
 
 
 
图22  SSH框架示意图
1)Struts2
Struts提供了相应的组件支持,MVC的Model,View和Controller。其核心控制器是ActionServlet类用于拦截用户发送的请求。通常由用户提供Action类,控制器接收来自ActionServlet的请求,然后调用相应模型的业务逻辑方法处理该请求,最后处理结果被返回给JSP页面并进行组装显示[16]
Model由JavaBean和ActionForm两个部分组成,其中JavaBean用于封装底层的业务逻辑,主要是数据库访问等。ActionForm则是将用户的请求参数进行封装为ActionForm对象,封装的对象通过ActionServlet转发给Action,最后ActionForm里面的请求参数被Action进行识别并以此处理用户的请求。
View的具体实现主要是JSP。Struts自身提供了丰富的标签库,在编写JSP页面时采用标签库可以减少JSP脚本的使用,Model可以与自定义的标签库进行有效交互并且增加了一些现实功能,struts的框架结构如图23所示。
图23  Struts框架结构图
 
Controller组件分别由业务逻辑控制器与系统核心控制器两个部分组成。业务逻辑控制器对应Action部分,本身不具备业务处理能力,主要对用户请求进行处理,通过调用Model来完成处理。系统核心控制器由Struts框架提供,继承HttpServlet类,对应ActionServlet,可以配置成标注的Servlet。所有的HTTP请求被该控制器负责拦截后根据用户请求决定是否要转给业务逻辑控制器。
2)Spring
Spring是由Rod Johnson为了解决企业应用开发的复杂性而创建的一个开源框[19]。其首先使用EJB完成然后再使用基本的JavaBean来完成。Spring的在服务器应用开发被大量使用但并不局限与服务器开发,任何Java应用都可以从Spring框架中受益,其架构具体如图2-4所示。
 
 
图24  Spring架构图
Spring是一个轻量级的框架,其轻量的主要表现在框架代码的大小以及运行开销两个方面。企业级应用开发负责度相对较高,主要采用的方法将EJB由JavaBean进行替换,此外提供了更多的能够适用于任何Java企业级应用开发与功能。Spring运行时开销很小,而且完整的spring框架的jar文件只有1MB。
Spring中可以将简单的组件配置、组合成为复杂的应用称之为框架。应用对象通过声明式即能够进行组合,典型地是在一个XML文件里进行配置。Spring也提供了很多基础功能(事务管理、持久化框架集成等等),将应用逻辑的开发留给开发人员。所有Spring的诸多优点和特征使开发人员能够编写更可管理、更易于测试的干净的代码。
3)Hibernate
Hibernate是一个对JDBC进行了非常轻量级的对象封装的开放源的对象关系映射框架,使得开发人员可以随心所欲的使用对象编程思维来进行数据库操作。在任何使用JDBC的场合均可使用Hibernate,既可以在Servlet/JSP的Web应用中使用,也可以在Java的客户端程序使用,此外,Hibernate还可以应用在EJB的J2EE架构中取代CMP完成数据持久化[21][22],Hibernate框架如图2-5所示。
 
 
图25  Hibernate框架结构图
Hibernate一共有5个核心接口,分别为Session、SessionFactory、Transaction、Query和Configuration。所有的接口在任何开发中均会全部被用到。通过这些接口能够进行事务控制和对持久化对象进行存取,下面对这五个核心接口分别进行介绍。
Session接口包含了很多常见的SQL语句,主要功能是对持久化对象的CRUD操作(CRUD的任务进行执行并完成与数据库的交流。但需要注意的是Session对象是非线程安全的,因此在开发多线程应用时需要注意)。同时,Hibernate的session与JSP应用中的HttpSession有本质的区别,这里的session是指Hibernate中的session,将HttpSession对象称为用户session。
SessionFactory接口负责Hibernate初始化。采用工厂模式负责创建Session对象充当数据存储源的代理角色。通常一个项目中一个SessionFactory就能满足需要,再对多个数据库进行操作或者是不同的数据库系统是,每个数据库可以指定一个SessionFactory,因此SessionFactory不是轻量级的。
Configuration接口负责创建SessionFactory对象、配置并启动Hibernate。在Hibernate的启动的过程中,Configuration类的实例首先定位映射文档位置并读取配置,然后创建SessionFactory对象。
Transaction接口是可选的,主要负责事务相关的操作,开发人员也可以根据需要设计编写自己的底层事务处理代码。
Query和Criteria接口可以使用HQL语言或SQL语句两种表达方式,用于执行各种数据库查询。
2.3.2基于LDAP的目录服务
LDAPLightweight Directory Access Protocol)协议是轻量级目录访问协议,用于访问存储在信息目录中的信息的Internet协议,是目录服务在TCP/IP上的实现[23]。它是以X500的目录协议为基础简化了实现以进行移植,所以称为轻量级的目录服务。LDAP是具备跨平台特向的标准协议,LDAP作为一种得到了业界的广泛认可的Internet标准。LDAP的核心规范在RFC中进行了定义,LDAP协议集描述了客户端应该如何访问存储在服务器上的数据,规定了区别名(DN)的命名方法、搜索格式、存取控制方法、URL格式、复制方法以及开发接口等,但没有定义如何存储数据。通过使用LDAP,可以在信息目录的正确位置读取(或存储)数据。 
目录服务是在分布式计算机环境中,定位和标识用户以及可用的各网络元素和网络资源,并提供搜索功能和权限管理功能的服务机制。不同的组织机构为了连通和融合各个分立的“信息孤岛”,一方面要求公布业务系统自身的职能和业务协作;另一方面,也希望能够对其他业务系统的信息和公共的信息资源进行检索并获取。这些需求采用目录服务都能够得到很好的解决。目录服务是命名服务的自然扩展,其对象具有属性及名称的命名服务。目录服务允许属性(比如用户的电子邮件地址)与对象相关联是目录服务与命名服务的关键区别。 
LDAP目录经常被认为跟关系数据库有较大差别,可以将其看做是一种特殊的数据库。具体的差别主要体现在以下几个方面: 
1)LDAP目录的互操作简单,适合于在一些大型的分布式环境中进行数据的存取,相对比较经济简单,易于实现。
2)LDAP目录在存取方式上相比与DBMS,则可以利用更加简单和优化的方式进行存取,而关系型数据库主要是通过SQL语言进行访问。 
3)LDAP查询数据的频率较高,以读为主,信息写入的频率较低。因此,针对这个特点,LDAP目录在读取速度方面进行了优化,能够很好地满足这一类应用的需求。
4)LDAP目录对数据的一致性要求很低,不能保证数据严格一致,基于这个特点不支持进行事务处理。
LDAP目录服务的功能主要在于提供分布式存取服务,因此,目录服务的信息内容,客户机的位置,服务器的分布情况都是相互无关的。LDAP因其分布式存取的特点,可以跟服务器的分布无关,在企业、政府部门等实际管理范围类,每台计算机都能访问LDAP服务器并获取数据,进行交互操作。各种类型的数据,例如联系人信息,邮件信息,人力资源信息等均可存储在LDAP服务器的目录中。
LDAP技术比较成熟,客户端程序能够很容易获取并且开发出来的开源程序也原来越多,可选择的空间较大,而且能够支持几乎所有的计算机操作系统。
1)作为标准的开平台协议之一,LDAP的客户端程序不用关系目录服务器所使用的平台和操作系统。众多的产商都愿意在自己开发的产品中提供对LDAP的兼容。在搭建LDAP目录服务器时,可以选用开源的代码,也可以使用商业的软件,因为协议是标准且一致的,因此不同的客户端软件只需要采用相同的协议和命令即可与服务器进行交互,进行范围获取数据。
2)相比于关系型数据库的管理和维护的复杂性,LDAP目录服务器安具有容易安装,操作简单,维护和优化容易等优点,且无需付费。
3)LDAP目录服务器采用 “推”或“拉”的方法对数据进行推送或者复制,例如,为了保证并增加数据的安全性与可靠性,数据被“推”到远程办公室段的操作员。数据的复制以内置于LDAP服务器中配置技术完成,即通过配置完成数据的复制。与关系数据库不同的是采用类似的复制功能,很难管理,此外支付给数据库产商的获取授权的费用也是一笔额外的开支。
4)LDAP对于数据的权限管理如数据的读写是允许根据需要通过ACL(访问控制列表)进行控制,可以为数据的范围提供较强的安全性和权限保护。例如,办公室管理员根据需要以及授权在员工信息发送变化时可以改变员工的信息,例如员工的工作地点等,但是如果钙片记录的其他域则可能因为授权限制而被不允许。ACI根据需要可以记录一些控制信息并进行控制,例如谁访问数据、访问什么数据等。LDAP目录服务器将完成这些控制,因此客户端的应用程序以及其他子系统将无需再进行安全检查,统一由LDAP目录服务器完成并管理。
5)LDAP通常存储最有用的数据,集数据不需要进行经常更新但是又需要被不同的地方频繁进行读取的数据。例如,公司员工的电话号码簿和组织结构图、计算机管理需要的信息、客户的联系信息、email假名、包括NIS映射、软件包的配置信息、公用证书和安全密匙等信息存储在LDAP目录中是十分有效的。
6)LDAP独立于厂商和平台的协议,意味着很容易将LDAP协议转换为其它的协议/系统并且能够进行互联。当前存在着多种LDAP与其它系统的网关,如 LDAP -X.500,HTTP -LDAP,WHOIS++ - LDAP,FINGER-LDAP,E-mail-LDAP,ODBC-LDAP等。
 
2.3.3 SOAP
简单对象访问协议(SOAP)是一种基于 XML 的简单轻量协议,是一种用于交换数据的协议规范,主要用于WEB上结构化的和固化的信息交换[24]。SOAP主要由三个部分组成1)SOAP 封装。定义了一个框架描述消息中需要包含哪些内容、消息由谁处理以及哪些是可选项哪些是必选项。2)SOAP 编码规则。规则定义了一种数据实例化类型机制,用于对应用程序数据交互时类型实例化。3)SOAP RPC 表示。定义了用于表示RPC和应答的协定。有的大量因特网协议和格式都能够对SOAP进行支持,能与SOAP 结合进行使用,此外SOAP协议还支持从消息系统到远程过程调用(RPC)等大量的应用程序。
SOAP作为一种基于XML的协议,可以在分布式环境中用于发送消息并执行远程过 程调用。使用SOAP可以通过任何特定的传输协议对数据进行序列化,尽管通常选用HTTP协议。构建平台与语言中性的互操作系统使用SOAP协议是一个好的选择。
SOAP 消息基本上是结合执行类似于请求/应答的模式的由发送端到接收端的单向传输。所有的 SOAP 协议数据都使用 XML 编码,一条 SOAP 消息由SOAP 的封装包, SOAP 标头和SOAP 体块的 XML 文档组成。HTTP 绑定SOAP结合了 HTTP 的丰富的特征库的优点以及SOAP 的特点。由HTTP传送 SOAP 并非意味着 SOAP 会覆盖现有的 HTTP 语义,而是将HTTP 上的 SOAP 语义自然的映射到 HTTP 语义。在使用 HTTP 作为协议绑定的场景中,RPC 请求被映射到 HTTP 请求上,而 RPC 应答映射到 HTTP 应答。但是在 RPC 上使用 SOAP 并不仅限于 HTTP 协议绑定。
本章从高校网站群内容管理的相关理论入手,结合高校网站群的特点,对B/S架构,MVC模型,Spring+Struts+Hibernate(简称SSH)框架,基于LDAP的用户权限验证,SOAP轻量级数据交换协议进行介绍,为在高校网站群内容管理系统的需求分析及设计尤其是内容管理模块以及内容的报送与接收模块的设计提供理论支撑。


3高校网站群内容管理系统分析
本文以构建高校网站群内容管理系统为需求,采用SSH架构,设计实现一个统一规划、统一部署、对运行在相同或者不同的服务器上网站群的信息发布、资源共享进行统一管理的内容管理系统。
3.1系统功能需求分析
3.1.1系统配置管理需求分析
1)预定义数据配置管理
在高校网站群内容管理系统中,在系统运行时以及运行过程中,需要对一些数据,例如目录数据、类型数据、系统栏目等进行预先定义和配置,配置后的数据将可以在不同的站点、页面、栏目中使用。需要预先定义并进行配置的数据主要有四种,分别为页面的内容栏目,数据目录,元数据以及数据字典。预定义数据通常都是由系统管理员进行操作完成,需求用例图如图3-1所示。
 
图31  预定义数据管理用例图
 
内容模型通常对应一个页面中包含的内容形式,通常有文章、组图、链接、视频等。一个页面中可以有多种内容模型,内容模型的管理主要是设置一个页面中包含的内容模式的启用与否以及内容模式在页面中布局的调整。
目录管理对应站点的一个页面或者是首页上的一个栏目,通过目录可以配置管理站点包含的内容,可以配置共享目录,在所有的站点中均可包含该目录的内容。一个目录可以包含多种不同的内容模型。如果该目录中的新闻信息在发布时需要审核、则需要将其跟相应的流程关联起来,可以设置该目录是否作为首页的一个栏目,设置是否能够评论等。
元数据主要是对站点页面中不同栏目的标题数据进行管理,通过元数据的配置管理、可以动态配置修改栏目的标题及其显示形式。元数据可以在所有的页面及站点中通用,其管理活动图如图3-2所示。
 
图3-2  元数据管理活动图
 
数据字典的管理主要是对站点页面中的一些下拉列表中数据项进行配置和管理,如单位类型,则可以配置“事业单位,国有企业、教育机构”等数据项,主要对数据
项的值进行添加、修改、删除等配置操作。
2)工作流配置管理
工作流配置管理主要是对信息流转过程中的各个环节,如报送、审核等,以及各个环节涉及的相关角色进行预先定义和配置。信息在流转时,根据工作流程发送到各个用户角色,然后再进行后续的操作。工作流的配置管理可以对已有的工作流进行管理,如修改包含的步骤,修改工作流中的步骤以及每个步骤的关联角色,对步骤进行添加、删除以及位置的调整等,还可以添加配置新的工作流。步骤的管理主要是对工作流中的步骤的名称、关联用户进行配置与修改。关联角色管理主要是为步骤选择、修改或者移除对应的用户角色,需求用例图如图3-3所示。
 
图33  工作流配置管理用例图
3)系统参数配置管理
系统参数配置管理主要是对系统中的角色以及角色的权限,对于发布信息的内容进行敏感性检查的关键过滤词汇、站群内容管理系统邮件接口以及内容管理系统默认管理的站点的设置。角色管理主要有角色的添加、角色权限的设定与修改以及角色的删除功能,过滤词管理主要是配置过滤词列表,可以对过滤词列表进行添加、修改、删除等。邮件配置主要是配置邮件服务器、邮件的用户信息等,系统配置主要是对站群内容管理系统的默认管理站点进行设置,具体的需求用例图如图3-4所示。
 
图34  系统参数配置用例图
3.1.2组织机构与用户管理需求分析
站群内容管理系统权限管理是定义权限的主体(每个用户)在系统中对特定操作对象允许进行操作的限定。其中用户的组织和确认是用户、角色、组织(部门)。系统中的操作是通过对象和具体的行为定义的,权限模型如图3-5所示
 
图35  权限模型
 
系统提供统一的组织机构管理实现用户、组织与角色的统一管理,并对用户采用分级管理的方式,即系统管理员可以为系统内所有用户分配操作以及使用权限,对用户进行管理组管理权限表示同一个组的用户有相同的权限,可以对同组的用户进行管理分级管理职责使各个组织与机构的责任明确对于用户组采用层次分明,直观以管理的树型结构进行显示和分级管理这样可以使各个组织相对独立,完成组织内部的工作和协调。
用户分类模型通常有两种,一种是角色模型以部门岗位为基础,另一种是级别分层树模型。以部门岗位为基础组织构建角色模式在组织机构内部比较常用,在构建模型时会对用户目录进行管理,可以复制目录,角色权限控制等多种属性。用户权限管理的重要功能之一就是对角色进行管理。用层次模型构建部门岗位角色的层次树状图时,用岗位或者用户角色表述用户职称,用部门表示岗位角色所属的组织或者机构,大的部门可以包含多个小的部门和机构。层次数模板的主要特点包括: 1)岗位或者角色,描述用户隶属;2)岗位或角色的有效时间; 3)部门包含的岗位或者角色,即部门和用户的包含关系。级别分层树模型中,不同层次的节点具有上下级或涵盖关系。相同层次的节点相互独立,之间没有上下级或涵盖关系。其最重要的特点是:1)用户只能属于一个级别;2)在同一层次节点下可以有多个级别;3)可用大于、小于或等于,以上、以下等词汇来指定多个或一个层次的级别。 级别分层模型通常是基于部门岗位树模型的一种补充。
高校网站群内容管理系统的权限管理需要根据高校的组织机构和用户进行管理,组织机构和用户管理主要内容有机构管理、用户管理、账号管理、角色管理以及其他一些功能设置,如部门级别维护以及人员级别维护。在组织机构与用户管理中,首先建立机构信息以及用户信息,根据组织机构,给用户建立账号,然后建立权限,给账号分配相应的权限,具体的用例图如图3-6所示。
图36  组织机构与用户管理用例图
 
3.1.3站群配置管理需求分析
高校网站群配置管理因为高校机构的级层特点,可以将一个高校的所有网站系统看做一个站群,将高校下属的每个院系也可以看做一个网站群。因此,要求能够支持多级网站群的管理,如图3-7所示。
 
 
图37  站群站点层级示意图
站群配置管理主要需要有对站点的配置管理、对站群的配置管理,同时对站群进行统计,站群统计主要有信息统计以及工作量统计,需要对站点及站群运行状态记录日志,对日志进行管理查看以及异常状态的追踪,此外,需要对站群以及站群部署的服务器进行配置管理,具体的需求用例如图3-8所示。
站点注册是将单个独立的站点注册到网站群内容管理系统中,从而以便站群内容管理系统对单个站点的内容进行管理,以及站点间数据的接收与发送的配置管理,同时,也可以对站点进行停用或者启用,说明站点在当前状态下是否被站群内容管理系统进行管理。
站群注册根据实际的需要建立站群,通常会跟组织机构中的一个机构或者一级机构对应,站群可以包含一个站群或者站点,建立站群通常都会给站群分配站群管理员,对被站群及其包含的站群及站点的配置进行管理。
站群统计以独立站点或者站群为单位进行统计,主要根据选择的时间范围统计站点或者站群内发布的信息甚至是各个栏目的信息的数量以及内容,并可以将信息以Excel的方式导出。此外,还需要对各个站点或者站群的工作内容,如稿件提交人员发布提交的稿件数量进行统计,以此作为工作人员的工作量。系统日志主要是查看各个不同的站点或者站群以及不同的服务器的运行日志情况,并可以选择日志进行导出。

Tags:

作者:佚名
Copyright © 2007-2013 完美毕业网. All Rights Reserved .
页面执行时间:1,093.75000 毫秒
Powered by:完美毕业网 http://www.biye114.com