为什么静态资源访问要加mvc:default-servlet-handler和mvc:annotation-drive
2019-03-30 20:09
176 查看
1. <mvc:default-servlet-handler/>和<mvc:annotation-drive /& 4000 gt;都没配:
动态资源(@RequestMapping映射的资源)能访问,而静态资源(.html,.js等)不能访问。
handlermapping:
RequestMappingHandlerMapping:每一个请求的信息和对应的方法都保存在起来。
handlerAdapters :
RequestMappingHandlerAdapter:执行目标方法。
2.只配置<mvc:default-servlet-handler/>:
静态资源能访问,而动态资源不能访问。
handlermapping:
动态不能访问的原因:
RequestMappingHandlerMapping没有了,用SimpleUrlHandlerMapping替换。
SimpleUrlHandlerMapping:作用将所有的请求全部交给tomcat处理。
静态能访问的原因:SimpleUrlHandlerMapping把所有请求映射给tomcat,静态资源自然能访问。
handlerAdapters :
因为所有请求都交给tomcat,就没有目标方法给适配器执行。
3.<mvc:default-servlet-handler/>和<mvc:annotation-drive />都配置:
所有资源都能访问。
handlermapping:
RequestMappingHandlerMapping:每一个请求的信息和对应的方法都保存在起来。
SimpleUrlHandlerMapping:将所有的请求全部交给tomcat处理。
handlerAdapters :
总结:
配置了<mvc:default-servlet-handler/>和<mvc:annotation-drive />后,首先执行后RequestMappingHandlerMapping,如果还有没有符合条件的请求,交给下一个,还没有交给SimpleUrlHandlerMapping直接将请求映射给tomcat。所以动态和静态资源都能访问了。
相关文章推荐
- SpringMVC——静态资源访问之<mvc:annotation-driven/>与<mvc:default-servlet-handler/>
- 0055 <mvc:default-servlet-handler />不能同时访问静态资源和动态资源的问题
- SpringMVC使用<mvc:default-servlet-handler/>可以访问静态资源,但是导致Controller访问失败
- <mvc:default-servlet-handler />不能同时访问静态资源和动态资源的问题
- 架构搭起后 为了实现 对静态资源文件的访问 spring_mvc.xml 添加<mvc:default-servlet-handler /> 但却再也无法访问到controller
- 添加<mvc:default-servlet-handler/>后,静态资源可以访问,Controller不能访问。
- SpringMVC系列(十)<mvc:default-servlet-handler/>(处理静态资源)和<mvc:annotation-driven />
- 配置了<mvc:default-servlet-handler />还是不能访问静态资源
- <mvc:default-servlet-handler/>不拦截静态资源的前提条件
- Spring MVC静态资源处理<mvc:default-servlet-handler>
- spring对于静态资源的访问<mvn:default-servlet-handler/>
- 为什么 在springmvc.xml 中 配置了<mvc:default-servlet-handler /> 一定要配置<mvc:annotation-driven >
- 为什么 在springmvc.xml 中 配置了<mvc:default-servlet-handler /> 一定要配置<mvc:annotation-driven >?
- Spring MVC静态资源处理----<mvc:default-servlet-handler />和<mvc:resources />
- 为什么 在springmvc.xml 中 配置了<mvc:default-servlet-handler /> 一定要配置<mvc:annotation-driven >?
- Spring MVC静态资源处理<mvc:resources><mvc:default-servlet-handler>
- SpringMVC 处理静态资源 <mvc:default-servlet-handler/>
- Spring MVC静态资源处理——<mvc:resources /> ||<mvc:default-servlet-handler />
- Spring MVC静态资源处理——<mvc:resources /> ||<mvc:default-servlet-handler />
- <mvc:default-servlet-handler />过滤器拦截静态资源