J2EE项目实训Spring框架技术第5章网上商城项目中应用Spring技术第2部分

上传人:re****.1 文档编号:467388341 上传时间:2023-02-23 格式:DOC 页数:18 大小:346.50KB
返回 下载 相关 举报
J2EE项目实训Spring框架技术第5章网上商城项目中应用Spring技术第2部分_第1页
第1页 / 共18页
J2EE项目实训Spring框架技术第5章网上商城项目中应用Spring技术第2部分_第2页
第2页 / 共18页
J2EE项目实训Spring框架技术第5章网上商城项目中应用Spring技术第2部分_第3页
第3页 / 共18页
J2EE项目实训Spring框架技术第5章网上商城项目中应用Spring技术第2部分_第4页
第4页 / 共18页
J2EE项目实训Spring框架技术第5章网上商城项目中应用Spring技术第2部分_第5页
第5页 / 共18页
点击查看更多>>
资源描述

《J2EE项目实训Spring框架技术第5章网上商城项目中应用Spring技术第2部分》由会员分享,可在线阅读,更多相关《J2EE项目实训Spring框架技术第5章网上商城项目中应用Spring技术第2部分(18页珍藏版)》请在金锄头文库上搜索。

1、杨教授工作室 精心创作的优秀程序员 职业提升必读系列资料第5章 网上商城项目中应用Spring技术(第2/3部分)1.1 整合Spring框架 与Struts框架1.1.1 在Spring中集成Struts MVC Web框架1、在Spring框架中整合 Struts MVC Web框架(1)Spring 框架允许开发者选择最适宜于应用系统的技术尽管在Spring框架中也提供了自己的MVC Web 框架(也就是Spring MVC组件技术,请读者参考本书的第十章“Spring MVC 框架应用技术”),但Spring框架并不强制和限制开发者对其它方面技术的选择和具体应用。为此它也提供了与其它流

2、行的 Web 框架相互整合的能力,这将允许开发人员充分利用已经掌握的现有的实现技术,同时也还能够享受到Spring框架所提供的其它附加的功能服务。(2)在Spring框架中能够整合各种其它的框架开发者可以将自己所熟悉的MVC Web框架与Spring框架相互整合,如Struts或者WebWork、JSF等等,都可以与Spring框架相互整合而成为适宜于自己的解決方案。当然,Spring框架也提供其它方面的整合,像是持久层的整合如JDBC、O/R Mapping工具(Hibernate、iBATIS)、事务处理等。2、为什么要进行整合 Struts 框架和 Spring框架(1)两者相互整合后的

3、主要优点1) 首先,Spring 框架将简化J2EE平台中的一些复杂的技术作为己任。从而为应用系统的开发者提供更简单的技术实现和技术应用,并提高了应用系统的性能和可测试性等。2) 其次,在Spring 框架中包含有一个 AOP的轻量级的具体实现,这将允许开发者能够将面向方面的编程技术应用于面向对象的代码中,从而能够扩展Struts框架的功能。3) 最后,一旦将Struts框架与Spring框架两者相互整合在一起后,从而将允许在Struts框架中应用Spring框架中所提供的控制反转IoC技术、内置的数据库连接池和数据访问组件(包括DAO和O/R Mapping等方面的技术)的支持,声明式事务处

4、理,以及灵活的系统配置等方面的特性。(2)能够适应开发团队的目前技术水平从而减少技术培训的成本由于Struts框架是一个比较成熟的MVC Web框架,目前熟悉和掌握它的程序员很多。相应地降低了项目的技术风险,也减少项目在技术培训方面的成本。(3)充分利用各种开源框架的特性,使应用系统的总体性能达到比较好的效果因为Struts框架在表示层方面的表现比较出色,而Spring框架本身所提供的IoC和AOP等方面的技术更能够满足应用系统中的应用层的需要,当然Hibernate框架在持久层的O/R Mapping技术实现上也表现较好。3、可以采用三种方法实现将 Struts MVC框架整合到 Sprin

5、g 框架中读者通过掌握这三种整合技术都能够加深对 Struts 和 Spring框架的技术实现方面的理解。但每种整合技术都有自己的应用特点。(1)使用 Spring 框架的 ActionSupport 类整合 Struts框架(2)使用 Spring 框架的 DelegatingRequestProcessor 覆盖 Struts 框架的 RequestProcessor (3)将 Struts 框架中的业务控制器组件Action 类的管理委托给 Spring 框架中的IoC容器进行管理无论开发者使用哪种形式的整合技术实现,都需要使用 Spring 框架中所提供的一个 ContextLoade

6、rPlugin插件类为Struts框架中的前端控制器组件ActionServlet类来装载Spring框架的控制反转IoC环境的XML配置文件。当然,具体实现配置该插件的方法与添加任何其它形式的插件一样,只需要简单地在Struts 框架中的struts-config.xml 文件添加该插件的声明。详细的细节请见如下【例5-4】中所示的标签。【例5-4】 在Struts的XML文件struts-config.xml中加载Spring所提供的实现整合的插件 4、三种整合方法的共同的要求是将Spring框架中的ContextLoaderPlugIn插件类作为Struts 框架的插件类,通过该插件(P

7、lug-In)类开发者实现了Spring 框架的IoC容器的WebApplicationContext环境的加载。(1)通过ContextLoaderPlugIn插件组件类实现了Spring 框架的IoC容器的环境的加载Spring框架在设计时就充分考虑到了如何能够实现与Struts框架的协同工作,通过内置的Struts 框架插件技术在两者之间提供了良好的结合点。开发者通过该插件实现了Spring框架的IoC环境的XML配置文件的加载以最后能够创建出WebApplicationContext对象实例。当然,开发者也可以采用在Spring框架中整合其它的MVC 框架时共同的配置方法,加载Cont

8、extLoaderListener组件的方式来获得WebApplicationContext对象。(2)缺省的Spring 框架IoC容器的XML文件的配置标签默认的Spring框架IoC容器XML配置文件的命名规则是映射的 Servlet 的名字,加上 -servlet.xml后缀。比如在基于Struts框架的应用系统中的ActionServlet 在 web.xml 文件中的定义是action, 那么默认的Spring框架IoC容器XML配置文件的文件名称就应该是 /WEB-INF/action-servlet.xml。 (3)单个Spring框架IoC容器XML配置文件的配置标签通过 为

9、ContextLoaderPlugIn插件提供contextConfigLocation属性实现定义Spring框架IoC容器XML配置文件的位置。具体请见前面的【例5-4】中的配置示例。(4)多个Spring IoC的*.xml文件的配置标签在实际的应用系统开发实现中,一般都会存在多个不同的功能模块,而各个功能模块一般是由不同的开发人员来开发实现的。如果应用系统中只允许一个XML的配置文件,将不利于系统的模块化的划分和实现。在Spring框架中也支持多配置文件,这只需要通过为contextConfigLocation属性提供多个文件而达到此目的。具体请见下面的【例5-5】中的配置示例。【例5

10、-5】多个Spring IoC的*.xml文件的配置标签的示例 1.1.2 整合Spring框架与Struts框架的实现示例为了能够让读者掌握如何实现整合Spring框架与Struts框架,下面通过网上商城项目中的Spring框架与 Struts框架的相互整合的实现过程来加以说明。本项目采用的是“将 Struts 框架中的业务控制器组件Action 类的管理委托给 Spring 框架中的IoC容器进行管理”的整合方法。1、修改struts-config.xml配置文件以增加ContextLoaderPlugIn 的插件类的设置在项目中的Struts框架中的struts-config.xml中加

11、载实现整合时所需要的插件组件类,利用该插件类实现对项目中Spring IoC的各个配置文件进行定位。具体的配置标签请见下面的【例5-6】中的配置示例。【例5-6】在struts-config.xml中加载项目的插件的示例 2、修改struts-config.xml配置文件中的各个功能的Action组件类的配置(1)主要是将各个Action类的type属性改变为org.springframework.web.struts.DelegatingActionProxy(2)配置示例下面以项目中的某个Action组件com.px1987.webshop.control.action.UserInfoM

12、anageAction类为例加以说明。【例57】配置的标签示例,并请注意其中的黑体部分的内容 。 其它的定义 它注册 Spring框架中的DelegatingActionProxy代理类(请见上面的黑体部分的定义),而DelegatingActionProxy 类使用Struts框架中的某个Action类的映射名称(请见下面的【例58】中的path=/userInfoManage)查找 Spring框架环境中的各个Action组件类的对象实例的声明。3、将Struts框架中的某个Action组件类注册为一个 Spring框架的Bean对象实例(1)利用动作映射(path=/userInfoManage)设置 标签的名称属性从而简单地创建了一个 UserInfoManageAction 类型的组件对象实例。这个Struts框架中的Action类的 Ja

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 资格认证/考试 > 自考

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号