SpringMVC 处理静态资源 <mvc:default-servlet-handler/>

SpringMVC 处理静态资源:
1. 为甚么会有这样的问题:
优雅的 REST 风格的资源URL 不希望带 .html 或 .do 等后缀
若将 DispatcherServlet 请求映射配置为 / ,
则SpringMVC 将捕获WEB 容器的所有请求, 包括静态资源的请求, SpringMVC 会将他们当成一个普通请求处理,
因找不到对应处理器将导致错误。
2. 解决:在 SpringMVC 的配置文件中配置<mvc:default-servlet-handler/> 的方式解决静态资源的问题。

default-servlet-handler 将在 SpringMVC 上下文中定义一个 DefaultServletHttpRequestHandler, 它会对进入 DispatcherServlet 的请求进行筛选
如果发现是没有经过映射处理的请求,将该请求交由 WEB 应用服务器默认的Servlet处理。 如果不是静态资源的请求, 才由 DispatcherServlet 继续处理
一般 WEB 应用服务器默认的 Servlet 的名称都是 default。
若所使用的WEB 服务器默认的Servlet 名称不是default, 则需要通过default-servlet-name 属性显式指定

其实只配置<mvc:default-servlet-handler/> 是不够的,还要配置<mvc:annotation-driven></mvc:annotation-driven>

时间: 2024-09-21 15:08:30

SpringMVC 处理静态资源 &lt;mvc:default-servlet-handler/&gt;的相关文章

SpringMVC访问静态资源的三种方式

 如果你的DispatcherServlet拦截 *.do这样的URL,就不存在访问不到静态资源的问题.如果你的DispatcherServlet拦截"/",拦截了所有的请求,同时对*.js,*.jpg的访问也就被拦截了. 问题原因:罪魁祸首是web.xml下对spring的DispatcherServlet请求url映射的配置,原配置如下: [html] view plain copy   <servlet>       <servlet-name>sprin

【SpringMVC】SpringMVC基础-静态资源映射、拦截器配置、@ControllerAdvice与其他基本配置

转载请注明出处http://blog.csdn.net/qq_26525215 本文源自[大学之旅_谙忆的博客] Spring MVC的定制配置需要我们的配置类继承一个WebMvcConfigurerAdapter类并在此类使用@EnableWebMvc注解来开启对Spring MVC的配置支持这样我们就可以重写这个类的方法完成我们的常用配置. 静态资源映射 程序的静态文件(js.css.图片)等需要直接访问这时我们可以在配置里重写addResourceHandlers方法来实现. 示例 1.添

springMVC对静态资源的拦截问题

问题描述 无论我怎么陪web.xml的拦截./或者/uc/*我的静态资源都被拦截了. <servlet-mapping> <servlet-name>yinhex</servlet-name> <url-pattern>/uc/*</url-pattern> </servlet-mapping> 配置为: < mvc:resources mapping="/javascripts/**"location=&q

java-springmvc不能加载静态资源

问题描述 springmvc不能加载静态资源 ,用default servlet直接访问jsp页面可以,经过一个controller跳转到页面,页面又不能加载静态资源了, 解决方案 <mvc:resource也不合适,好像是路径有问题,有人能帮我看一下吗

spring-使用SpringMVC 静态资源访问 报错ConversionFailedException

问题描述 使用SpringMVC 静态资源访问 报错ConversionFailedException 使用的spring 版本是 4.20 在springmvc配置 报错很奇怪.. 解决方案 该错误是因为: 1.内嵌jetty在运行时会锁定静态资源:因此在运行过程中不能删除静态资源: 2.问题的根源是启动了多个jetty实例,但是实际没有报端口冲突,可以检查任务管理器看是否有多个java/javaw进程在运行,如果是杀掉进程然后重试. 解决方案二: 配置这个没? <mvc:resources

SpringMVC处理静态文件源码分析

SpringMVC处理静态资源,主要是两个标签,mvc:resources和mvc:default-servlet-handler.在详细说明他们的原理之前,需要先简单说明下SpringMVC中请求处理机制:HandlerMapping和HandlerAdapter. 1 HandlerMapping和HandlerAdapter的来由 用过python Django框架的都知道Django对于访问方式的配置就是,一个url路径和一个函数配对,你访问这个url,就会直接调用这个函数,简单明了 然

spring 4.2.6 mvc 静态资源访问问题

问题描述 spring 4.2.6 mvc 静态资源访问问题 ![新进公司, 尝试自己重新拾起搭一个springmvc框架,可是一个静态资源访问问 题拦住了我两天,求大神帮忙: 图片说明](http://img.ask.csdn.net/upload/201605/20/1463737807_800158.png) 这是使用jar包 web.xml 配置: springmvc <context-param> <param-name>contextConfigLocation<

js引用-spring mvc 静态资源不能引用 已经配置了不拦截静态资源!!!

问题描述 spring mvc 静态资源不能引用 已经配置了不拦截静态资源!!! 页面中引用 web.xml中配置 springorg.springframework.web.servlet.DispatcherServlet <init-param> <param-name>contextConfigLocation</param-name> <param-value>/WEB-INF/classes/spring-servlet.xml</para

Spring MVC 4.2.2 中最好的集成静态资源的方法

Spring MVC 4.2.2 中最好的集成静态资源的方法 太阳火神的美丽人生 (http://blog.csdn.net/opengl_es) 本文遵循"署名-非商业用途-保持一致"创作公用协议 转载请保留此句:太阳火神的美丽人生 -  本博客专注于 敏捷开发及移动和物联设备研究:iOS.Android.Html5.Arduino.pcDuino,否则,出自本博客的文章拒绝转载或再转载,谢谢合作. Spring MVC 4.2.2 – Best way to Add/Integra