基于Struts+Spring的Web应用设计与实现_第1页
基于Struts+Spring的Web应用设计与实现_第2页
基于Struts+Spring的Web应用设计与实现_第3页
基于Struts+Spring的Web应用设计与实现_第4页
基于Struts+Spring的Web应用设计与实现_第5页
已阅读5页,还剩2页未读 继续免费阅读

下载本文档

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

文档简介

1、基于Struts+Spring的Web应用设计与实现摘要集成Struts、Spring框架技术构建基于J2EE的eb应用可以进步J2EE工程的可重用性。本文介绍了两种流行的开源框架技术Struts和Spring的原理,并将这两种框架技术整合起来应用到实际的eb工程开发中去,从而进步工程代码的复用性及工程开发的效率。关键词J2EE;Struts;Spring1引言基于J2EE的eb应用系统以其层次性、平台无关性逐渐被大多数的公司所认同,已经成为电子商务主要的解决方案。传统的JSP/Servlet开发形式优势在于直接、简单,对于小型应用可以很方便、快速地进展开发。但是这种不加控制的开发形式往往带来

2、显示、业务和数据的高耦合性,软件难以重用。基于J2EE的框架技术是解决上述问题的重要技术,可以有效地支持大型J2EEeb应用工程的开发。本文通过集成Struts和Spring基于J2EE的框架技术提出了一种构建J2EE应用的框架。2Struts框架技术TheJakartaStruts工程是由Apahe发起的开源工程,是基于V别离思想的出色产品。Struts的ntrller是通过Atinservlet对象实现的,这个控制器获得Vie(JSP)的恳求后根据Atinapping对象调度对应的del(Atin对象)处理业务逻辑,并将获得的处理结果AtinFrard对象返回给Vie(JSP)来响应。同时

3、通过AtinFr对象封装数据在del和Vie之间交互使用。Struts还通过自定义的标签库丰富了Vie层的JSP技术,方便了页面设计。下面我们就分别从视图、控制、模型和Struts的配置文件struts-nfig.xl来介绍Struts的体系构造。(1)视图。是一组JSP文件,Struts自身包含了一组可扩展的自定义标签库,可以简化创立用户界面的过程。这些JSP文件中没有业务逻辑,也没有信息模型。(2)模型。模型主要是表示一个系统的状态和业务逻辑。在Struts中,系统的状态主要由AtiFrBean表达,对于业务逻辑通常由JavaBean或EJB组件来实现。(3)控制器。控制器主要由AtinS

4、ervlet类和Atin类来实现,AtinServlet类是Struts框架中的核心组件,主要负责接收HTTP恳求信息。根据配置文件struts-nfig.xl的配置信息,把恳求转发适宜的Atin对象。Atin类负责调用模型的方法,更新模型的状态,并帮助控制应用程序的流程。(4)配置文件Struts-nfig.xl。当AtinServlet接收HTTP恳求信息时,如何决定把用户恳求转发给哪个Atin对象呢?这就需要一些描绘用户恳求途径和Atin映射关系的配置信息。在Struts中,这些配置映射信息都存储在特定的XL文件Struts-nfig.xl中,在该配置文件中,每一个Atin的映射信息都通

5、过一个(atin)元素来配置。这些配置信息在系统启动时会被读入内存,供Struts在运行期间使用,在内存中,每一个(atin)元素都对应一个Atinapping类的实例。3Spring框架技术Spring的哲学是在不影响Java对象设计的情况下将Java对象参加到框架中。Spring解决了许多J2EE开发中的常见问题,它不依赖于任何的组件,是一种轻量级的容器,其核心是Bean工厂,用以构造我们所需要的(del)。Spring框架是一个分层的应用程序开发框架,而不是某一层,如Struts或Hibernate都属于单独某一层的框架。Spring致力于在整个应用程序层面架构程序,使程序的各个层面协调

6、一致,从而发挥最大的效能。Spring能整合现有的优秀单层框架,把它们组成连接统一的框架。Spring框架的模块化完成的非常好。大体上,存在如图1所示的几个模块。图1Spring模块图其中:Spring核心模块:Spring架构中最为基储重要的模块。它提供了I容器,即依赖注入。其中,BeanFatry是最为重要的概念,对理解I和Appliatinntext起到了重要作用。SpringAP模块:实现了AP联盟中定义的AP编程实现。如提供拦截器实现事务管理。用它来提供非管理环境下申明方式的事务、平安等效劳。Springntext模块:直接位于Spring的核心模块之上。Spring上下文模块除了继

7、承Spring核心模块的功能外还添加了用于资源绑定、事件移植、资源装载以及装载上下文等功能。这对于eb应用和J2EE应用非常有效。Springeb模块:提供面向eb应用集成的功能。其中ntextLaderServlet和ntextLaderListener正是eb模块提供的。当同Tapestry、JSF集成时需要使用到Springeb模块。SpringDA模块:提供了JDB抽象层,使得开发者不用再去编写同RDBS交互、非业务功能的JDB代码。而且DA模块还可以分析RDBS厂商专有的SQL错误代码。同时可以提供编程方式和声明方式控制事务。SpringR模块:为当前流行的/Rapping技术提供集

8、成。借助于Spring框架提供的简单事务声明,开发者可以很容易实现对/Rapping中操作的事务控制。SpringebV模块:提供V实现,明晰的划分了eb应用中涉及到的各项内容。4基于Struts+Spring框架技术的实现在工程开发理论中提出了基于Struts+Spring框架的J2EE架构。将这两种框架整合起来用到eb工程开发的不同层。整个架构的构造流程图如图2所示。图2架构的构造流程图(1)客户端发送一个查询恳求,在JSP里提交表单时指定处理表单的path。frnae=spQueryethd=pstatin=rt/reate/path/SPInfanageAtin.dtarget=btt

9、(2)在struts-nfig.xl文件里根据path配置Atin的详细名和途径。atinpath=/SPInfanageAtintype=.y.spanage.spinfanage.atin.SPInfanageAtinunknn=falsevalidate=truefrardnae=initpath=/./vies/spanage/spinfanage/SPInfQuery.jsprediret=falsentextRelative=false/frardnae=SPBriefInfpath=/./vies/spanage/spinfanage/SPBriefInf.jsprediret=

10、falsentextRelative=false/frard/atin转贴于论文联盟.ll.(3)在Atin类里根据JSP页传递回的操作类型perType参数来执行详细的方法,生成业务逻辑对象B的实例,并调用B的getSpInfQueryBrief,返回一个结果集。PrivateAtinFrardspInfQueryBrief(Atinappingapping,HttpServletRequestrequest,HttpServletRespnserespnse)thrsAtinExeptinSPInfanageBservie=(SPInfanageB)getBaseServie().getS

11、ervieFaade(spInfanageB);StringspShrtNae=request.getParaeter(spShrtNae);.tryll=servie.getSpInfQueryBrief(apData);ath(Exeptine).request.setAttribute(spShrtNae,spShrtNae);.returnapping.findFrard(SPBriefInf);(4)在appliatinntext.xl里配置B的途径以及所调用的数据库对象DAbeanid=spInfanageBparent=spTransatinPrxyprpertynae=targ

12、etbeanlass=.y.spanage.spinfanage.b.SPInfanageBIplprpertynae=spInfanageDArefbean=spInfanageDA/prperty/bean/prperty/bean(5)在dataAessntext.xl文件里配置数据库对象DA详细途径:beanid=spInfanageDAlass=.y.spanage.spinfanage.da.SPInfanageDAIplprpertynae=dataSurerefbean=dataSure/prperty/bean从而连接到数据库对数据进展增删改查操作。并一步步返回数据到表现层,用JSP+XSL展示,从而完成一个流程的操作。5完毕语Struts+Spring框架是目前众多软件企业主流的应用技术,也是J2EE将来开展的趋势。Struts作为前台控制框架简化了程序的开发。使得页面展示代码和JAVA代码编写工作有效分工,使工程的可扩展性大大增强,进步了开发效率,降低了维护本钱。Spring作为一个应用于所有层面的综合框架,具有强大的应用功能及灵敏性,合适作为一些大规模软件工程的底层平台。基于Struts+Spring的eb应用实现了表示层、逻辑层和数据库访问层等多层面别离,使软件在扩展性、复用性和维护性方面上有了很大进步。具有

温馨提示

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

评论

0/150

提交评论