zoukankan      html  css  js  c++  java
  • <mvc:annotation-driven/>与<mvc:default-servlet-handler/>之间的一个问题(转)

    在做项目的时候,我希望静态资源由WEB服务器默认的Servlet来处理,所以我在配置文件中添加了如下的语句:

               <mvc:default-servlet-handler/>

    但是我再次运行项目,并访问资源的时候,发现访问@RequestMapping("/path1/path2")都不能访问了,之前没有添加的时候是能够访问的。

    解决方案是,在配置文件中再添加一句代码:

               <mvc:annotation-driven/>

    这样做的原因是:

        

    当两种标签都没有的时候,框架默认注册的有AnnotationMethodHandlerAdapter这个bean,所以能够处理@RequestMapping这个注解,但是只配置了<mvc:default-servlet-handler/>时所注册的三个bean都不能处理@RequestMapping注解,因此无法找到相应的Controller,进而无法进行访问路径的映射,当两种标签都有的时候,<mvc:annotation-driven/>会注册一个RequestMappingHandlerAdapter的bean,这个bean能够处理@RequestMapping这个注解。

  • 相关阅读:
    [标签] action的使用
    [sql server]sql server 查询所在port
    Freemarker中通过request获得contextPath
    Spring Cp30配置
    [Git]Git远程仓库
    kill tomcat process in window
    离线安装maven
    离线安装maven,重新打开eclipse报错处理方法
    [Git]Git安装
    树莓派魔镜的制作
  • 原文地址:https://www.cnblogs.com/applemy/p/6605797.html
Copyright © 2011-2022 走看看