毕业设计(论文)基于struts框架SOC安全策略管理.doc

上传人:laozhun 文档编号:2387570 上传时间:2023-02-17 格式:DOC 页数:29 大小:794.50KB
返回 下载 相关 举报
毕业设计(论文)基于struts框架SOC安全策略管理.doc_第1页
第1页 / 共29页
毕业设计(论文)基于struts框架SOC安全策略管理.doc_第2页
第2页 / 共29页
毕业设计(论文)基于struts框架SOC安全策略管理.doc_第3页
第3页 / 共29页
毕业设计(论文)基于struts框架SOC安全策略管理.doc_第4页
第4页 / 共29页
毕业设计(论文)基于struts框架SOC安全策略管理.doc_第5页
第5页 / 共29页
点击查看更多>>
资源描述

《毕业设计(论文)基于struts框架SOC安全策略管理.doc》由会员分享,可在线阅读,更多相关《毕业设计(论文)基于struts框架SOC安全策略管理.doc(29页珍藏版)》请在三一办公上搜索。

1、本科生毕业论文(设计)论文题目:基于struts框架SOC安全策略管理姓名:学号:班级:2班年级:专业:信息管理与信息系统学院:信息学院指导教师:完成时间:2007年 4 月17日作者声明本毕业论文(设计)是在导师的指导下由本人独立撰写完成的,没有剽窃、抄袭、造假等违反道德、学术规范和其他侵权行为。对本论文(设计)的研究做出重要贡献的个人和集体,均已在文中以明确方式标明。因本毕业论文(设计)引起的法律结果完全由本人承担。毕业论文(设计)成果归中南财经政法大学所有。特此声明。作者专业:信息管理与信息系统作者学号:作者签名:年 月 日基于struts框架SOC安全策略管理周好生The securi

2、ty policy supervise of SOC repose struts platformzhou, hao sheng2007年 4 月19日摘要随着Java2企业版(J2EE)平台的成长和传播,JSP/servlet在B/S项目上的使用越来越广,这促进的各种WEB框架的飞速发展,其中Struts-来源于Apache Jakarta项目是这些框架的王者,从2001首次发布到现在已经经历了六个年头的发展,已经成为一种非常稳定与成熟的框架,并且许多大型网站已成功地应用了Struts框架。本文主要阐述了struts的基本理念及其优势,深入探讨MVC模式,并结合项目实际“NetEye SOC

3、系统的安全策略管理”,成功运用了struts。NetEye SOC是东软公司为中国人民银行清算总中心定制的网络安全监控平台和安全分析系统的合同项目,其子模块安全策略管理对于一个银行系统是相当重要的。本文第一章介绍了论文所用的核心技术及其发展,分析Model 1 与Model 2两种典型的网站开发模式,并通过比较,阐述了两者优缺点,并同时引出了Web网站开发的MVC模式,指出了其相对传统网站开发模式的优势,从而说明使用基于MVC设计模式的Struts框架的优势。第二章则是NetEye SOC系统的安全策略管理模块的需求分析及功能介绍,安全策略管理是NetEye SOC一个重要的模块,它对整个网络

4、安全监控平台和安全分析系统的安全策略进行管理,从而对系统的其它模块的管理策略进行调整。第三章详细介绍了如何用Struts框架来设计实现NetEye SOC的安全策略管理,主要从MVC设计模式的角度分析系统的模型层,视图层,及控制层的设计实现,最后展示了如何通过数据流与控制流将三层联系在一起,协同工作。关键词:Struts,MVC,安全策略管理AbstractIt was the king of these skeletal, which is root in apache jakarta project. From deployed in 2001 for the first time, it

5、 has experienced six-year development,already became a kind of extraordinary stabilize and adult frame, and many large-scale net stations have successfully applied the struts frame. With Java2 enterprise edition(J2EE)platform pullulate and spread,using JSP/servlet in B/S project l increasingly wide,

6、which promoted different kinds of web skeletal to develop at very fast speed. The text expound the basic logos and predominance of struts,in-depth investigation MVC mode,with project practice the Security Policy Management of NetEye SOC System ,which applied struts successfully. NetEye SOC System wa

7、s Neusoft corporation for Peoples Bank of China liquidation chief center custom-built network security monitor platform and safety analysis system contract project,thereof sub-module about the management of security policy is very important in a banking system .The first chapter of the text introduc

8、e the kernel technology very extend of the tractate,analyses Model1 and Model2,the amphi-representative two mode of web design,then through the medium of comparison,expound both merits and demerits,at the same time derivation the MVC mode of the web design,indicate the predominance relative to tradi

9、tion web design technique. The second chapter of the text show the demand analysis and function introduce of NetEye SOCs security policy supervise modular,the security policy supervise is NetEye SOCs one important module,it versus entire network security monitor platform and safety analysis systemic

10、s security policy proceed supervise,thereby regulate systemics every other modulars management strategy. the third chapter introduce point by point of design NetEye SOCs security policy supervise use the struts frame, especially through MVC project modals three layers, analytic how to design systems

11、 model layer, view layer and controller layer, at last unfurl how to let the three layers work together through the data stream and control stream.Key words: Struts, MVC, security policy supervise目 录引 论3一、技术背景3(一)J2EE的发展Model1与Model231.Model1与Model2起源3(二)MVC模型41.MVC分层结构42.基于MVC结构WEB系统设计4(三)Struts框架M

12、VC的实现61.Struts框架简介62.从MVC角度来看Struts63.基于Struts框架Web项目的实现74.Struts优势与弱势8二、系统功能介绍10(一)背景10(二)系统模块介绍101.日志信息收集策略102.资产信息管理策略113.日志信息分析策略114.安全信息分析策略125.信息分析策略126.安全状况评估策略137.安全事件处理策略138.安全知识发布策略14三、STRUTS在项目中的应用15(一)模块功能概览15(二)系统三层结构设计171.视图层View的实现172.控制层Controller设计213.模型层Model设计24(三)系统中的数据流与控制流26结 语

13、27主要参考文献27引 论随着网络的普及,给基于WEB的系统越来越强的生命力,同时也使的WEB系统的业务复杂性越来越高,传统的单页面模式已经越来越不能胜任,基于MVC模式的Struts框架大大增强了WEB系统的稳定性、健壮性和可维护性,减小了系统的开发周期与成本。本文就Struts的思想及优势做了初步的分析和探讨。一、技术背景(一)J2EE的发展Model1与Model21. Model1与Model2起源回到JSP发展的中世纪(1998年10月7号),Sun Microsystems发布了JSP规范的0.92版。许多早期的容器(Servlet Container)提供商开始采纳这一标准,并基

14、于这一版规范推出了JSP/Servlet容器。在这一版规范中,有一篇“Java服务器页面访问模型”的综述,提出了著名的两个模型,并被顺理成章的就命名为了Model1和Model2。2. Model1与Model2概念与比较(1)Model1在使用JAVA技术建立Web应用的实例中,由于JSP技术的发展,很快这种便于掌握和可实现快速开发的技术就成了创建Web应用的主要技术。JSP页面中可以非常容易地结合业务逻辑(jsp:useBean)、服务端处理过程(jsp:scriplet)和HTML(),在JSP页面中同时实现显示,业务逻辑和流程控制,从而可以快速地完成应用开发。现在很多的Web应用就是由

15、一组JSP页面构成的。这种以JSP为中心的开发模型我们可以称之为Model 1。(2)Model2Model 2体系结构是一种联合使用JSP与Servlet来提供动态内容服务的方法。它吸取了JSP和Servlet两种技术各自的突出优点,用JSP生成表示层的内容,让Servlet完成深层次的处理任务,Model2很大程序的体现了MVC的思想,不在将所有的功能都放在JSP页面处理,很大程度的实现前台显示与后台处理的分离。(3)Model1与Model2异同JSP Model 1和 JSP Model 2的本质区别在于处理用户请求的位置不同。在Model 1体系中,JSP页面负责响应用户请求并将处理

16、结果返回用户。JSP既要负责业务流程控制,又要负责提供表示层数据,同时充当视图和控制器,未能实现这两个模块之间的独立和分离。Model2则很好的结合了JSP与Servlet技术,JSP负责将数据结果显示给用户,Servlet则处理后台的业务逻辑与数据,这种前后台分离的思想是MVC架构(也是今天Struts)的基石。(二)MVC模型1. MVC分层结构MVC即模型视图控制器模式是一种“分治”的思想。模型,即相关的数据,它是对象的内在属性;视图是模型的外在表现形式,一个模型可以对应一个或者多个视图,视图还具有与外界交互的功能;控制器是模型与视图的联系纽带,控制器提取通过视图传输进来的外部信息转化成

17、相应事件,然后由对应的控制器对模型进行更新;相应的,模型的更新与修改将通过控制器通知视图,保持视图与模型的一致性。图1揭示了这三者之间的关系:图1 MVC模型图2. 基于MVC结构WEB系统设计MVC是包含模型、视力、控制器的分层结构,其系统设计也分别从这三个方面入手,图2为基于MVCWEB系统的图形化描述。图2 MVC模型(1) 控制器的设计控制器是模型和视图联系的纽带,同时也是系统的控制中心。根据控制器在系统中的不同作用,将控制器抽象成四种控制器类型,即主控制器(MainController)、请求映射控制器(RequestMappingConntroller)、视图选择控制器(ViewC

18、ontroller)和模型控制器(ModelController)。其中,主控制器在系统服务器最前端,用于从xml配置文件中获取HTTP请求映射表,接收客户的HTTP请求并且将该请求传送给请求映射控制器和视图选择控制器;请求映射控制器将传送来的HTTP请求映射到相应的处理器(处理器采用JavaBean形式)进行处理,其映射表直接从Servlet Context的变量中获取(因为该映射表已经由主控制器装入),处理完后返回结果;视图控制器根据HTTP请求映射表及处理器处理后的结果进行下一个视图的选择;模型控制器负责客户会话数据的处理:每一个客户对应一个会话模型,用来描述客户的各种状态等。(2) 视

19、图层设计视图层即用户界面,在WEB系统中表现为用户可见的网页,对于每一个使用HTTP请求响应模型WEB应用,View组件基本上总是和响应相关联的组件,并将结果返回给用户,视图层应该尽量减少业务逻辑或复杂的分析。(3) 模型层设计模型层通常表现为业务对象或者物理后端系统。模型层通常都是业务相关的,对于数据库的相关操作,及复杂的业务逻辑分析都应该在模型层实现。(三)Struts框架MVC的实现1. Struts框架简介Struts 框架是基于Model 2 的架构,也就是基于MVC模式的框架技术。它是一个免费的开源的Web层的应用框架, 具有很高的可配置性,并有一个不断增长的特性列表。一个前端控制

20、组件、一系列动作类、动作映射、处理XML的实用工具类、服务器端Java Bean 的自动填充、支持验证的Web 表单、国际化支持、生成HT。2. 从MVC角度来看StrutsStruts作为一个MVC的框架,对Model、View和Controller都提供了对应的实现组件。Struts框架的处理流程清楚的体现了MVC系统的特点,如图3所示。图3 Struts的MVC模型(1)Controller控制器的作用是从客户端接受请求,并且选择执行相应的业务逻辑,然后把响应结果送回到客户端。在Struts中Controller功能由图中ActionServlet和ActionMapping对象构成:核

21、心是一个Servlet类型的对象ActionServlet,它用来接受客户端的请求。ActionServlet包括一组基于配置的ActionMapping对象,每个ActionMapping对象实现了一个请求到一个具体的Model部分中Action处理器对象之间的映射。 (2)ModelMVC系统中的Model部分从概念上可以分为两类系统的内部状态,和改变系统状态的动作。Struts为Model部分提供了Action和ActionForm对象:所有的Action处理器对象都是开发者从Struts的Action类派生的子类。Action处理器对象封装了具体的处理逻辑,调用业务逻辑模块,并且把响应

22、提交到合适的View组件以产生响应。Struts提供的ActionForm组件对象,它可以通过定义属性描述客户端表单数据。开发者可以从它派生子类对象,利用它和Struts提供的自定义标记库结合可以实现对客户端的表单数据的良好封装和支持,Action处理器对象可以直接对它进行读写,而不再需要和request、response对象进行数据交互。通过ActionForm组件对象实现了对View和Model之间交互的支持。Struts通常建议使用一组JavaBean表示系统的内部状态,根据系统的复杂度也可以使用像Entity EJB 和 Session EJB等组件来实现系统状态。Struts建议在实

23、现时把做什么(Action)和如何做(业务逻辑)分离。这样可以实现业务逻辑的重用。 (3)ViewStruts应用中的View部分是通过JSP技术实现的。Struts提供了自定义的标记库可以使用,通过这些自定义标记可以非常好地和系统的Model部分交互,通过使用这些自定义标记创建的JSP表单,可以实现和Model部分中的ActionForm的映射,完成对用户数据的封装,同时这些自定义标记还提供了像模板定制等多种显示功能。 3. 基于Struts框架Web项目的实现由于Struts已经为我们提供了一个非常好的MVC框架,我们利用Struts开发MVC系统时可以大大加快开发的速度。在开发时可以采用

24、的一个开发流程如下:1) 收集和定义应用需求。 2) 基于数据采集和显示的原则定义和开发屏幕显示需求 。 3) 为每一个屏幕显示定义访问路径。 4) 定义ActionMappings建立到应用业务逻辑之间的联系。 5) 开发满足屏幕显示需求的所有支持对象。 6) 基于每一个屏幕显示需求提供的数据属性来创建对应的ActionForm对象 7) 开发被ActionMapping调用的Action对象。 8) 开发应用业务逻辑对象 (Bean,EJB,等等)。 9) 对应ActionMapping设计的流程创建JSP页面。 10) 建立合适的配置文件struts-config.xml , web.x

25、ml。 11) 开发/测试/部署 具体在使用Struts框架时,对应各个部分的开发工作主要包括:1) Model部分:采用JavaBean和EJB组件,设计和实现系统的业务逻辑。根据不同的请求从Action派生具体Action处理对象。完成做什么的任务来调用由Bean构成的业务组件。创建由ActionForm 的派生类实现对客户端表单数据的封装。 2) Controller部分:Struts为我们提供了核心控制部分的实现。我们只需要配置ActionMapping对象 3) View部分:为了使用Model中的ActionForm 对象,我们必须用Struts提供的自定义标记创建HTML 表单。

26、利用Struts提供的自定义标记库编写用户界面把应用逻辑和显示逻辑分离。Struts框架通过这些自定义标记建立了View和Model之间的联系。Struts的自定义标记还提供了很多定制页面的功能。 4) 同时需要编辑两个配置文件:web.xml和struts-config.xml。通过它们配置Struts系统中的各个模块之间的交互。4. Struts优势与弱势(1)传统的Web项目模型在传统的Web项目中,每个呈现给用户的页面往往是一个独立的、自主完成所有任务的模块,如图4所示。图4 传统Web页面模型这种传统的单页面有在Web项目开发中有很大的不足:1) HTML 和 Java 强耦合在一起

27、 JSP 文件的编写者必须既是网页设计者,又是 Java 开发者。其结果通常要么是很糟的 Java 代码,要么是难看的网页,有时甚至 Java 代码和网页都很糟。 2) Java 和 JavaScript 的不足 随着网页逐渐变大,很容易想到实现一些 JavaScript。当网页中出现 JavaScript 时,这种脚本就可能与 Java 代码产生混淆。可能产生混淆的一个例子是使用客户端的 JavaScript 来验证 email 域。 3) 内嵌的流程逻辑 要理解应用程序的整个流程,您必须浏览所有网页。试想一下拥有 100 个网页的网站的错综复杂的逻辑。 4) 调试困难 除了很糟的外观之外,

28、HTML 标记、Java 代码和 JavaScript 代码都集中在一个网页中还使调试变得相当困难。 5) 强耦合 更改业务逻辑或数据可能牵涉相关的每个网页。 6) 美学 在很大的网页中,这编码样式看起来杂乱无章。我过去进行 Microsoft ASP 开发时,我经常看到有 1000 行的网页。即使有彩色语法显示,阅读和理解这些代码仍然比较困难。 (2)基于Struts网站模型Struts作为一种MVC的WEB框架,实现了视图、控制、模型三层的分离,如图5所示。图5 Struts网站模型Struts的三层结构有效的解决了传统Web开发的问题。1) 划分责任 单独的包使管理人员能够在开发小组内委

29、派责任。这也有助于提高开发人员的责任心。 2) 通用件 我们设想开发人员将这个包看作一个商业软件。将它放在另外的包中使它更像通用件。这个包可能是通用件,也可能是由组织内部的另一个小组开发的。 3) 避免不必要的构建和单元测试。 分开的构建进程有助于避免不必要的构建和单元测试。 4) 使用接口开发 在进行开发和避免不必要的耦合时,它有助于从接口的观点来思考问题。这是极重要的一个方面。当开发您自己的业务包时,这些业务类不应该关心到底是 Web 应用程序执行调用,还是独立应用程序执行调用。因此,应该避免在业务逻辑层使用对 servlet API 或 Struts API 调用的任何引用。 5) 稳定

30、性 并不是每个组织都每天、每周甚至每月进行检修。因此,在进行开发时,稳定的接口点是重要的。不能因为业务包处于变迁阶段就认为 Web 项目也应该处于变迁阶段。 二、系统功能介绍(一)背景NetEye Soc项目是与为中国人民银行清算总中心定制的网络安全监控平台和安全分析系统的合同项目,该系统主要目的是对中国现代化支付系统统一的网络管理,中国现代化支付系统主要提供跨行的支付清算服务,发挥着中央银行作为最终清算者的职能作用。支付系统网络是中国现代化支付系统的网络平台,完成支付系统的数据采集和传输功能。支付系统网络主要分为三部分,分别是网络通信平台、网络安全体系和网络管理系统。其中安全策略管理是网络安

31、全体系一个重要的模块,它对整个网络安全监控平台和安全分析系统的安全策略进行管理,从而对系统的其它模块的管理策略进行调整。(二)系统模块介绍安全策略管理模块包含NetEye SOC 系统其它模块相关策略配置信息,是保证整个系统安全重要部分,此模块包含八个子模块,如图6所示。安全策略管理日志信息收集策略资产信息管理策略日志信息分析策略安全信息分析策略脆弱性信息分析策略安全状况评估策略安全事件处理策略安全知识发布策略图6 安全策略管理模块分析1. 日志信息收集策略设定NetEye SOC如何对日志信息进行收集,包含IP段,收集代理等的设定。其功能如果图7所示图7 日志信息收集策略功能2. 资产信息管

32、理策略资产信息管理策略是为资产信息管理模块服务,对用户所管辖范围的资产信息(IP设备、帧中继设备、安全设备、计算机设备、通信链路等)进行统一设定,如图8所示。图8 资产信息管理策略3. 日志信息分析策略对收集的日志信息按些模块规定的测试进行分析,得出用户所需要的结果,如图9所示。图9 日志信息分析策略4. 安全信息分析策略为安全信息分析服务,是安全信息分析工作依据的基础,如图10所示。图10 安全信息分析策略5. 信息分析策略脆弱性信息分析的基础,对收集来的脆弱性信息将与脆弱性策略进行匹配,将满足策略条件的脆弱性信息转为安全事件,由安全事件处理模块进行处理,如图11所示。图11 脆弱性信息分析

33、策略6. 安全状况评估策略安全状况评估策略是系统的安全评估的定时器,它定义系统在什么时间自动对哪些安全域的哪些内容进行评估,对安全状况评估策略的管理包括增、删、改、查的功能,如图12所示。图12 安全状况评估策略7. 安全事件处理策略此模块是安全事件处理模块的基础,安全事件处理模块将按安全事件处理策略中定义的工作流程,通知事件处理人员对安全事件进行处理;处理人员查看安全事件的详细信息,从而可以接收或拒绝该安全事件的处理,如图13所示。.图13 安全事件处理策略8. 安全知识发布策略安全知识发布策略是为安全知识管理服务的,是为了实现网络安全信息的共享和利用,并将安全漏洞,安全信息,安全案例等集中

34、起来,形成一个安全共享知识库,该知识库的数据以数据库的方式存储及管理,为培养高素质网络安全技术人员提供培训资源,其功能始图2.9所示。图14 安全知识发布策略三、Struts在项目中的应用在本章中,将结合日志信息管理模块的实现,来阐述如何将Struts框架运用于Web项目中,并展示其与传统Web开发模式的优势。(一)模块功能概览作为一个银行支付系统网络,日志是对系统安全进行分析评价的一个重要方面,系统日志管理策略模块可以由管理员设定日志生成的相关规则,提供日志收集与分析的一个标准,日志管理策略的内容包括对策略的查看,新增,修改,及删除功能。主界面如图15所示。图15 安全信息收集策略主界面为了

35、更好的了解安全策略平台的原理及工作过程,表1提供了安全策略管理平台所有操作流程。表1 日志信息收集策略流程表序号参与者动作系统响应1点击二级菜单中“日志信息收集策略”界面显示如图3.1,界面上有“应用”、“查看”、“新建策略”、“编辑策略”和“删除策略”五个按钮。列表是策略列表,包含的内容:1) 选中2) 状态 单元格中是个复选框,当选中时,表示该策略是一条有效策略;未选中时,表示该策略时一条无效策略。策略名称3) 策略创建人4) 策略的创建时间5) 备注2点击图3.1中的“查看”按钮系统弹出查看窗口,包括:1) 策略名称静态文本2) 策略描述静态文本3) 创建人4) 创建时间5) 适用的代理

36、6) 分析代理7) 还有一个关闭按钮。3点击图3.1中的“新建策略” 按钮包括策略名称、策略描述两个输入框、一个选择代理下拉框、监控器选择和收集内容定制窗口。1) 策略名称:文本输入框,输入格式可以由字母、数字或文字组成。此处用户输入策略名称。2) 策略描述:文本输入框,输入格式可以由字母、数字或文字组成。此处用户输入策略描述。3) 代理选择:下拉框,包含所有收集代理,从代理数据库中读取所有事件收集代理,系统根据用户选择的代理进行下一步的具体配置。4) 收集来源:IP地址范围输入框和IP地址列表组合框;即收集指定IP范围的设备的安全信息,不同IP之间用分号分隔;5) 安全级别:Syslog信息

37、的安全级别,可多选,用户自定义代理收集的安全信息级别;6) 分析代理:分析代理下拉框,从代理数据库中读取所有事件分析代理,用户选择将收集上来的数据传递给哪个分析代理;在所有条件限制完毕后单击保存刚才所做的操作,安全信息收集策略表中的其他属性字段,创建时间依据系统时间自动生成,创建人也依照登陆SOC系统的管理员ID自动填入,策略的状态默认为启用状态点击完成,完成该代理的配置。4点击图3.1中的“编辑策略”按钮用户选定策略列表中的某一项点击编辑按钮依次弹出新建策略时的窗口,让用户对选中策略进行修改。5点击图3.1中的“删除策略”按钮用户选中策略列表中的某一项点击删除后弹出确认对话框,如果用户选择确

38、定则删除该条策略,点击取消返回策略列表。6点击图3.1中的“应用”按钮用户可以点击或者来改变策略的状态,然后点击“应用”来执行操作。(二)系统三层结构设计Struts最大的优势是实现了MVC的三层结构,使系统的结构更清晰,可维护性和业务代码的重用性得到提高,本系统严格按照MVC三层结构进行设计开发,日志管理策略总体框架如图16所示。图16 日志管理策略框架1. 视图层View的实现视图层在Web系统里主要表现为用户可见的网页,作为系统与用户交流的一个窗口,视图层在设计时力求美观,大方,易用。在运用了MVC设计思想后,本系统视图层只负责显示用户数据,不再处理复杂的业务逻辑,从而视图层可以从系统中

39、独立出来,由专业的美工人员设计完成,以达到更好的显示效果,本模块视图层结构如图17所示。图17 视图层结构图1) css文件夹:存放各级页面CSS文件2) js文件夹:存放各级页面JavaScript脚本文件3) images文件夹:存放各级页面图片文件4) strategy文件夹:存放页面文件,其详细内容如表2所示。表2 页面功能表序号页面名称功能简介对应页面效果图1main.jsp该模块主界面,是一个框架界面2showAll.jsp策略列表显示界面如图18所示3add.jsp添加策略界面如图19所示4see.jsp查看策略详细信息界面如图20所示5to_search.jsp条件查找界面如图

40、21所示6update.jsp策略信息修改界面如图22所示图18 策略列表显示界面图19 添加策略界面图20 查看策略详细信息界面图21 条件查找界面图22 策略信息修改界面2. 控制层Controller设计控制层负责处理模型和视图间数据流向和转换问题,视图层只能通过控制器从模型中获得数据,并且控制层必须经过良好定义,以一种更加标准化的方式来与视图和模型进行通信,Struts非常良好的解决了这个问题,在Struts中,控制层主要由ActionMapping和Action组成,ActionMapping负责将请求转发到合适的Action进行处理,Action则负责数据的组装与分发。在本模块中,

41、控制层设计如下,ActionMapping主要体现对struts-config.xml设计体现,struts-config.xml是struts的配置文件,包括对表单bean的配置,action的配置,以及对国际化支持的 message-resources的配置。com.neusoft.soc.strategy.action包中则定义了各个页面相关的action,其中各页面详细功能如表3所示。表3 Action页面列表序号类名主要功能1RedirectAction 负责重定向页面2ShowAllAction 任务1:得到前台页面列表.转发至列表页面任务2:作为查找功能的显示列表.转发至列表页面

42、3ButtonAction 任务1:“添加”提交处理任务2:得到“查看”信息,转发至查看页面任务3:“删除”处理任务4:点击“修改”,查询后得到信息“转发修改”页面任务5:“修改”处理任务6:“条件查找”处理.查找后转发至ShowAllAction3. 模型层Model设计模型层是业务逻辑,数据库通信及数据持久化的代码,在这一层,将处理控制层传输过来的数据,经过相应的处理后转发给控制层代码,在复杂的业务系统中,为使系统结构更清晰,提高模型层代码的重用性及可维护性,通常会对这一层进一步细分为三层,其结构如表4所列。表4 模型层三层结构层次名称作用本项目中对应代码第一层VO层控制层与模型层通信的数

43、据对象com.neusoft.soc.strategy.vo包第二层BO层业务逻辑层com.neusoft.soc.strategy.bo包第三层DAO层数据库操作层com.neusoft.soc.strategy.dao包(1)VO层实现VO层在实现上是一组标准的JavaBean,些层本身不处理任何业务逻辑,但它们是控制层与模型层以及模型层内部数据传输的载体,在本项目中,VO层设计始表5所示。表5 VO层设计序号类名称功能描述1CollectPolicyVO对应数据库表SOC_COLLECTPOLICY字段2CollectRelateVO 对应数据库表SOC_COLLECTRELATE字段3

44、CollectVO对应数据库表SOC_COLLECTPOLICY、SOC_COLLECTRELATE字段4CollectSearchVO 对应条件查询表单字段(2)BO层设计BO层是业务逻辑处理的主要部位,在本项目中主要由StrategyManager类实现,其功能可分为数据库相关和非数据库相关两大类。数据库相关操作:1) 列表显示方法:按policy_id查询一条或所有COLLECT记录,返回list,调用DAO层的联合查询方法,查询2个表,返回一个LIST2) 插入策略方法:将参数CollectPolicyVO CollectRelateVO 2个对象,插入数据库调用DAO层的插入记录方法

45、3) 删除策略方法:根据参数policy_id,删除policy的同时删除relate,调用DAO层的删除记录方法4) 修改策略方法:根据参数CollectPolicyVO CollectRelateVO 2个对象,修改数据库相应记录,调用DAO层的修改记录方法5) 条件查找方法:根据参数CollectSearchVO,设定SQL语句及DAO层executeQuery方法参数,调用DAO层的查找方法,返回一个LIST非数据库相关操作:1) 对象转换:转换SearchForm 为 CollectSearchVO2) 对象转换:转换StrategyFormForMe to CollectPolic

46、yVO,CollectRelateVO3) 对象转换:转换CollectVO to StrategyFormForMe4) 关闭页面+刷新父页面(3)DAO层实现对数据库的操作都在DAO中完成,本项目DAO层由数据库操作类StrategyDAO,些类继承了BaseDAO类,及实现功能如下。1) 及联插入方法:将参数CollectPolicyVO CollectRelateVO 2个对象插入到数据库中的2个表,SOC_COLLECTPOLICY,SOC_COLLECTRELATE2) 及联删除方法::根据参数policy_id删除数据库中2个表的信息,;3) 及联修改方法:根据参数CollectPolicyVO CollectRelateVO 2个对

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 建筑/施工/环境 > 项目建议


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号