快速业务通道

Spring学习点滴,《Spring in Action》笔记(七) - 编程入门网

作者 佚名技术 来源 NET编程 浏览 发布时间 2012-06-15

Spring学习点滴,《Spring in Action》笔记(七)

时间:2011-08-18 unmi.cc 隔叶黄莺

91. Spring MVC 还提供了一个特别点的 Controller 类型就是 ThrowawayController,它自成一个接 口,ThrowawayController 和 Controller 的关系是平行的。什么叫做 ThrowawayController 呢,中文 叫做一次性控制器,也就像一次性筷子那样用完即丢,下次要用又拿新的。表现在实例上就是相应 Bean 配置为 singleton="false",每次初始化一个新实例。与其他 Controller 的区别完全就是 WebWork 或 Struts2 的 Action 与 Struts1 的 Action 的区别。因为它是多例的,所以可以用实例变量来接受请求 参数,执行方法无参数;而不像其他的 Controller ,因为共享实例,所以需要通过执行方法的来传递请 求参数以保证线程安全(P273)

92. 在《Spring in Action》第一版 274 页说 DispatcherServlet 使用缺省 ControllerHandlerAdapter 时只会把控制权分发给 Controller 接口类型的类,而要配置 ThrowawayControllerHandlerAdapter 后,Dispatcherservlet 就把控制权分发给 ThrowawayController ,配置如下:

<bean id="throwawayHandler" class="org.springframework.web.servlet.mvc.throwaway.ThrowawayControllerHandlerAdapter" />

<bean id="throwawayHandler" class="org.springframework.web.servlet.mvc.throwaway.ThrowawayControllerHandlerAdapter" />

同时要是应用系统中要混用两种控制器的话,还得在前面的基础上配置一个 SimpleControllerHandlerAdapter,配置如下:

<bean id="simpleHandler" class="org.springframework.web.servlet.mvc.SimpleControllerHandlerAdapter" />

<bean id="simpleHandler" class="org.springframework.web.servlet.mvc.SimpleControllerHandlerAdapter" />

然而我在实际测试中,仍用缺省的 ControllerHandlerAdapter,同样能在一个应用中混合使用两种类 型的控制器,尚不知不加上面那两个配置会出什么问题(P274)

93. 视图解析器(实现接口 org.springframework.web.servlet.ViewResolver) 用来把 ModelAndView 对象的逻辑视图名解析成一个用于将结果渲染给用户的视图 Bean。Spring 有 4 种 ViewResolver 实现 ,相当于不同 Struts2 的 result 类型:

·InternalResourceViewResolver -- 将逻辑视图名解析为一个用模板文件(如 JSP 和 Velocity 等 模板) 渲染的视图对象。

·BeanNameViewResolver     --             解析为一个 DispatcherServlet 应用上下文中的视图 Bean

·ResourceBundleViewResolver --             解析为 ResourceBundler 中的视图 对象

·XmlViewResolver          -- 从一个 XML 文件中解析视图 Bean,这个文件是从 DispatcherServlet 应用上下文中分离出来的。

注意:在 org.springframework.web.servlet.view 包下只有 XmlViewResolver,而没有 XmlViewResolver,书中是笔误。

Spring学习点滴,《Spring in Action》笔记(七)(2)

时间:2011-08-18 unmi.cc 隔叶黄莺

94. InternalResourceViewResolver 的使用,假如 Controller 中是 return new ModelAndView ("userDetail"),要转向到 /WEB-INF/jsp/userDetail.jsp 时应配置为:

<bean id="viewResolver" 

class="org.springframework.web.servlet.view.InternalResourceViewResolver">  

<property name="prefix"><value>/WEB-INF/jsp/&

凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!

分享到: 更多

Copyright ©1999-2011 厦门凌众科技有限公司 厦门优通互联科技开发有限公司 All rights reserved

地址(ADD):厦门软件园二期望海路63号701E(东南融通旁) 邮编(ZIP):361008

电话:0592-5908028 传真:0592-5908039 咨询信箱:web@lingzhong.cn 咨询OICQ:173723134

《中华人民共和国增值电信业务经营许可证》闽B2-20100024  ICP备案:闽ICP备05037997号