`
womendu
  • 浏览: 1480420 次
  • 性别: Icon_minigender_2
  • 来自: 北京
文章分类
社区版块
存档分类
最新评论

Spring架构增强MultiActionController(4)

阅读更多

这样我们基本上已经简化了MultiActionController的自身的配置,但是它仍然需要与一个UrlHandlerMapping联系,也就是增加或删除一个MutilActionController的bean。都需要修改某一个UrlHandlerMapping的bean的配置。这也就是我们上面说的理想MultiActionController的第3点。


4.3简化UrlHandlerMapping的关联配置


UrlHandlerMapping是请求路径与Controller之间的对应映射。UrlHandlerMapping有一个最简单的实现就是SimpleUrlHandlerMapping。






<bean id="simpleUrlMapping"><p>class="org.springframework.web.servlet.handler.SimpleUrlHandlerMapping"&gt;<br><property name="mappings"><br><props><br><prop key="/welcom.do">oneController</prop><br></props><br></property><br></p></bean>


“/welcom.do”这个请求路径对应bean 名称为oneController的Controller实例。所以应将MultiActionController中的所有请求路径都保存在一个UrlHandlerMapping的mappings属性中,作为key值,把MutilActionController 的bean实例作为value作。


DispatcherServlet在初始化时会在Context中查找所有类型为HandlerMapping的bean,将所有的HandlerMapping实例保存在handlerMappings属性List中。当一个请求进入时,DispatcherServlet会依次查找handlerMappings List中的HandlerMapping实例是否匹配当前请求路径,如果匹配当前请求路径,就获取请求路径对应的Controller实例;如果Controller实例是MultiActionController类型时,MultiActionController就会会根据当前请求路径去调用MultiActionController相应的方法。这就是一个MultiActionController的执行过程。


根据这样的原理,能够有一个类似SimpleUrlHandlerMapping的HandlerMapping能够在初始化的时候自动在当前WebApplicationContext中查找所有MultiActionController类型的bean。然后依次生成一个以MultiActionController的urlMethodmappings Map的所有key值作为key值,以MultiActionController实例为value值的一个Map,并把这个Map所有元素都添加到SimpleUrlHandlerMapping的mappings属性中。这样就达到了我们自动化配置的效果。


我们把这个HandlerMapping 称为MultiMethodControllerUrlHandlerMapping,下面我们讲怎么具体去实现它。


分享到:
评论

相关推荐

    Spring MVC MultiActionController---多动作控制器

    Spring MVC MultiActionController---多动作控制器 博客介绍: http://blog.csdn.net/sunshine_love/article/details/8842261 更换web.xml中web-config.xml即可尝试不同方法解析器,如有问题,请博客回复。欢迎交流...

    spring mvc MultiActionController配置方法源码

    spring mvc MultiActionController配置方法源码,可以部署到tomcat中访问

    springMVC3学习(五)--MultiActionController(源码)

    springMVC3学习(五)--MultiActionController(源码) 文章地址:http://blog.csdn.net/itmyhome1990/article/details/25988091

    开源框架 Spring Gossip

    Spring MVC 入门 从一个最简单的 Spring Web 应用程式,来看看 Spring MVC 框架的架构与 API 组成元素。 第一个 Spring MVC 程式 WebApplicationContext Handler Mapping Handler ...

    Spring-Reference_zh_CN(Spring中文参考手册)

    13.3.3. MultiActionController 13.3.4. 命令控制器 13.4. 处理器映射(handler mapping) 13.4.1. BeanNameUrlHandlerMapping 13.4.2. SimpleUrlHandlerMapping 13.4.3. 拦截器(HandlerInterceptor) 13.5. 视图与...

    SpringMVC - MultiActionController

    SpringMVCMultiActionController的使用最简化教程

    搞定J2EE:STRUTS+SPRING+HIBERNATE整合详解与典型案例 (1)

    10.5.4 多动作控制器(MultiActionController) 10.6 Spring的视图映射机制 10.6.1 分发器(DispatcherServlet) 10.6.2 视图映射 10.7 Spring的模型(Model) 10.7.1 模型简介 10.7.2 模型封装 10.8 小结 第十一章 ...

    Spring 2.0 开发参考手册

    13.3.3. MultiActionController 13.3.4. 命令控制器 13.4. 处理器映射(handler mapping) 13.4.1. BeanNameUrlHandlerMapping 13.4.2. SimpleUrlHandlerMapping 13.4.3. 拦截器(HandlerInterceptor) 13.5. ...

    spring chm文档

    13.3.3. MultiActionController 13.3.4. 命令控制器 13.4. 处理器映射(handler mapping) 13.4.1. BeanNameUrlHandlerMapping 13.4.2. SimpleUrlHandlerMapping 13.4.3. 拦截器(HandlerInterceptor) 13.5. ...

    Spring MVC框架 多动作控制器详解 spring mvc 2.5

    本代码使用了Spring MVC框架(spring2.5架包) 演示了(Controller接口的试用方法)和 MultiActionController多动作控制器 数据库连接试用Spring JDBC 并且着重介绍了MultiActionController多动作控制器的两种方法名...

    Spring中文帮助文档

    2.6.2. 增强的测试支持 2.6.3. JMX 支持 2.6.4. 将Spring 应用程序上下文部署为JCA adapter 2.6.5. 计划任务 2.6.6. 对Java 5 (Tiger) 支持 2.7. 移植到Spring 2.5 2.7.1. 改变 2.8. 更新的样例应用 2.9. ...

    Spring API

    2.6.2. 增强的测试支持 2.6.3. JMX 支持 2.6.4. 将Spring 应用程序上下文部署为JCA adapter 2.6.5. 计划任务 2.6.6. 对Java 5 (Tiger) 支持 2.7. 移植到Spring 2.5 2.7.1. 改变 2.8. 更新的样例应用 2.9. ...

    搞定J2EE:STRUTS+SPRING+HIBERNATE整合详解与典型案例 (3)

    10.5.4 多动作控制器(MultiActionController) 10.6 Spring的视图映射机制 10.6.1 分发器(DispatcherServlet) 10.6.2 视图映射 10.7 Spring的模型(Model) 10.7.1 模型简介 10.7.2 模型封装 10.8 小结 第十一章 ...

    spring mvc_03

    MultiActionController

    搞定J2EE:STRUTS+SPRING+HIBERNATE整合详解与典型案例 (2)

    10.5.4 多动作控制器(MultiActionController) 10.6 Spring的视图映射机制 10.6.1 分发器(DispatcherServlet) 10.6.2 视图映射 10.7 Spring的模型(Model) 10.7.1 模型简介 10.7.2 模型封装 10.8 小结 第十一章 ...

    spring 2.0表单绑定实例

    自己写的spring表单绑定的小例子,分别使用SimpleFormController,MultiActionController,spring的form tag和validator。 还在MultiActionController里面实现了表单的绑定

    SPRING API 2.0.CHM

    MultiActionController MultipartActionRequest MultipartException MultipartFile MultipartFilter MultipartHttpServletRequest MultipartResolver MutablePersistenceUnitInfo MutablePropertyValues ...

    spring mvc_04

    MultiActionController静态访问

    springmvcdemo

    4 使用MultiActionController 5 所有service利用spring注入到controller中,利用注解 6 数据库连接串单独在properties文件配置 7 在spring中配置数据源,属性使用properties文件中的配置 8 利用JdbcTemplate操作...

    《程序天下:J2EE整合详解与典型案例》光盘源码

    10.5.4 多动作控制器(MultiActionController) 10.6 Spring的视图映射机制 10.6.1 分发器(DispatcherServlet) 10.6.2 视图映射 10.7 Spring的模型(Model) 10.7.1 模型简介 10.7.2 模型封装 10.8 小结 第十一章 ...

Global site tag (gtag.js) - Google Analytics