spring mvc为何多注入了个SimpleUrlHandlerMapping?

最近在调试项目时,debug DispatcherServlet时,发现handlerMappings属性包含了RequestMappingHandlerMapping、SimpleUrlHandlerMapping、BeanNameUrlHandlerMapping。

可是我明明只声明了

<bean class="org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerMapping"></bean>

真是百思不得解啊,因为是旧项目基础改造的,以为是别的地方有隐秘用法,找了半天,没找到,今天下班时,突然想到我注册了

<mvc:resources location="" mapping=""/>

翻看ResourcesBeanDefinitionParser,查到了关键代码:

1.

RootBeanDefinition handlerMappingDef = new RootBeanDefinition(SimpleUrlHandlerMapping.class);
     handlerMappingDef.setSource(source);
     handlerMappingDef.setRole(BeanDefinition.ROLE_INFRASTRUCTURE);
     handlerMappingDef.getPropertyValues().add("urlMap", urlMap);

2.

// Ensure BeanNameUrlHandlerMapping (SPR-8289) and default HandlerAdapters are not "turned off"
     // Register HttpRequestHandlerAdapter
     MvcNamespaceUtils.registerDefaultComponents(parserContext, source);

指向

public static void registerDefaultComponents(ParserContext parserContext, Object source) {
       registerBeanNameUrlHandlerMapping(parserContext, source);
        registerHttpRequestHandlerAdapter(parserContext, source);
        registerSimpleControllerHandlerAdapter(parserContext, source);
    }

才知道原因了。。

更多相关文章
  • spring mvc 3.1的自動注入參數遇到的問題
    在网上下载了xheditor作为页面的编辑器,编辑内容后post到后台保存,后台方法用sp
  • <Spring 验证.数据綁定和类型转换>那篇Spring官方Doc文档的翻译并没有涉及具体使用的细节,本篇结合Spring MVC表单数据上传这个通用应用场景写一下笔者的实践. (转载请注明出处,谢谢) POST方式新增业务模型类,Spring MVC通过 @ModelAttribut ...
  • In Spring MVC application, the SimpleUrlHandlerMapping is the most flexible handler mapping class, which allow developer to specify the mapping of URL ...
  • 


    		    Spring MVC 3 深入總結
    一.前言: 大家好,Spring3 MVC是非常优秀的MVC框架,由其是在3.0版本发布后,现在有越来越多的团队选择了Spring3 MVC了.Spring3 MVC结构简单,应了那句话简单就是美,而且他强大不失灵活,性能也很优秀. 官方的下载网址是:http://www.springsource. ...
  • 概述 第1 部分 拦截器类 第2 部分 拦截器配置 第3 部分 实例 参考 第1 部分 拦截器类 一般情况下,对来自浏览器的请求的拦截,是利用Filter实现的,这种方式可以实现Bean预处理.后处理. Spring
  • 


    		    Spring MVC 3.0版本 深入講解
    Spring3 MVC是非常优秀的MVC框架,由其是在3.0版本发布后,现在有越来越多的团队选择了Spring3 MVC了.Spring3 MVC结构简单,应了那句话简单就是美,而且他强大不失灵活,性能也很优秀. 官方的下载网址是:http://www.springsource.org/downlo ...
  • Spring mvc源碼url路由我們到底能走多遠系列(38)
    我们到底能走多远系列38 扯淡: 马航的事,挺震惊的.还是多多珍惜身边的人吧.   主题: Spring mvc 作为表现层的框架,整个流程是比较好理解的,毕竟我们做web开发的,最早也经常接触的就是一个request进一个response出的http请求. 一个表现层框架,一下三点组成了一个完整的
  • Spring MVC 教程,快速入門,深入分析  博客分類: SPRING
    资源下载: Spring_MVC_教程_快速入门_深入分析V1.1.pdf SpringMVC核心配置文件示例.rar     作者:赵磊 博客:http://elf8848.iteye.com   目录 一.前言二.spring mvc 核心类与接口三.spring mvc 核心流程图 四.spr ...
一周排行
  • http://antjanus.com/blog/web-development-tutorials/front-end-development/comprehensive-beginner-guide-angula
  • DHCP功能平时用的不算少,而且本人的几乎所有的DHCP功能都是在交换机上实现的,虽然也可以通过PC实现,而且PC的DHCP Server功能还更完善,比如可以不受DHCP作用域的限制.IP分配情况直观等优点,但从我
  • Ordered Fractions Consider the set of all reduced fractions between 0 and 1 inclusive with denominators less
  • opkginstallhttp://downloads.openwrt.org/snapshots/trunk/ramips/packages/reaver_r_ramips.ipk 安装后,运行reave ...
  • 


    		    根據EventID郵件通知並發送詳細日志信息
    因为手机和移动设备太多,DHCP池不够用,想通过EventID的方法在Win 2003 S
  • ACM2050
    问题描述:   平面上有n条折线,问这些折线最多能将平面分割成多少块?   样例输入  
  •      在Cocos2D-x中,每个CCNode都拥有一个摄像机类CCCamera.只有通过CCCamera,CCNode才会被渲染出来.当CCNode发生缩放.旋转和位置变化时,都需要覆盖CCCamera,让CC
  • 原文: https://code.google.com/p/googlemock/wiki/CheatSheet   Defining a Mock Class Mocking a Normal Class Mock ...
  • 


    		    perconatoolkit 之 pttablechecksum、pttablesync說明
    工作上需要把一个从库提升为主库,但对从库和主库的数据一致性不能保证一样,所以就利用 pt-
  • WIFI WIFI在掌上设备上应用越来越广泛,而WIFI手机就是其中一份子.现有的WIFI手机标准IEEE802.11a/b/g/n,由于采用无需许可的频段(ISM),较需频段许可的WiMAX更易于商务应用和部署.W