• 软件测试技术
  • 软件测试博客
  • 软件测试视频
  • 开源软件测试技术
  • 软件测试论坛
  • 软件测试沙龙
  • 软件测试资料下载
  • 软件测试杂志
  • 软件测试人才招聘
    暂时没有公告

字号: | 推荐给好友 上一篇 | 下一篇

Spring Framework概述 (2)

发布: 2008-6-20 14:43 | 作者: 不详 | 来源: 测试时代编辑整理 | 查看: 85次 | 进入软件测试论坛讨论

领测软件测试网

有很多方法能更简单地建立代理,如果你不需要AOP框架的全部功能(例如不用XML而用Java 5.0的注释来驱动事务性代理,或者用一段简单的XML实现对一个Spring工厂里的许多bean应用一致的代理策略)。

还可以不用BeanFactory而用编程方法来构建AOP代理,虽然这种方法很少用:

TestBean target = new TestBean();
DebugInterceptor di = new DebugInterceptor();
MyInterceptor mi = new MyInterceptor();
ProxyFactory factory = new ProxyFactory(target);
factory.addInterceptor(0, di);
factory.addInterceptor(1, mi);
// 一个用来封装目标的“调用拦截器”被自动添加
ITestBean tb = (ITestBean) factory.getProxy();

我们相信最好把应用程序的装配从Java代码里拿出来,AOP也不例外。

使用AOP作为EJB(版本2或以上版本)的替代物来进行企业服务是的重要性正在加大。Spring很成功地展现了这个主张的价值。

MVC web框架

Spring包括一个强大且高度可配置的MVC web框架。

Spring的MVC模型尽管不是源自Struts,但和Struts的很相似。一个Spring的Controller和Struts 的Action很像,它们都是多线程服务对象,只有一个实例代表所有客户端执行。但是,我们相信Spring MVC比起Struts有一些显著的优点。例如:

  • Spring在控制器、JavaBean模型和视图间提供清晰的划分。
  • Spring的MVC非常灵活。不像Struts那样强迫你的Action和Form对象有具体的继承(你只能用Java 的继承),Spring的MVC完全基于接口。此外,几乎Spring MVC框架的每个部分都能通过插入你自己的接口来配置。当然,我们也提供了简单的类作为一个可选的实现。
  • Spring,像WebWork一样,提供拦截器和控制器,这使得提取处理多个请求的公共行为变得容易了。
  • Spring MVC是真正视图无关的。如果你不愿意你不会被强制使用JSP;你能用Velocity、XLST或其他视图技术。如果你想用自定义的视图机制(比如你自己的模板语言),你可以轻松实现Spring的View接口来整合它。
  • Spring的Controller 和其他对象一样是通过IoC来配置的。这让它们易于测试,和其他Spring管理的对象漂亮地集成在一起。
  • 因为没有强迫使用具体的继承和显式地依赖于调度器Servlet的控制器,Spring MVC的web 层比起Struts 的web 层更易于测试。
  • Web 层变成了业务对象层上的薄薄一层。这鼓励了好的习惯。Struts和其他专门的web框架让你自己实现你的业务对象;Spring为你的应用程序提供了一个完整的框架。

和Struts 1.1 及更高版本一样,你能根据你的需要在Spring MVC应用程序中拥有多个调度器Servlet。

下面的范例演示了一个简单的Spring Controller 如何访问同一个应用程序上下文中定一个业务对象。这个控制器在它的handleRequest()方法中执行了一个Google查询:

文章来源于领测软件测试网 https://www.ltesting.net/


关于领测软件测试网 | 领测软件测试网合作伙伴 | 广告服务 | 投稿指南 | 联系我们 | 网站地图 | 友情链接
版权所有(C) 2003-2010 TestAge(领测软件测试网)|领测国际科技(北京)有限公司|软件测试工程师培训网 All Rights Reserved
北京市海淀区中关村南大街9号北京理工科技大厦1402室 京ICP备10010545号-5
技术支持和业务联系:info@testage.com.cn 电话:010-51297073

软件测试 | 领测国际ISTQBISTQB官网TMMiTMMi认证国际软件测试工程师认证领测软件测试网