spring mvc 不拦截静态资源
来源:互联网 发布:windows官方主题 编辑:程序博客网 时间:2024/06/03 00:02
当我们在web.xml配置spring mvc 的前端控制器(DispatcherServlet)时,经常会配置"/"来拦截所有请求,但是前端的css,js,html等文件都会被拦截点,这并不是我们所期望,和看到的,下面我们介绍三种方法解决访问静态资源问题。
<servlet> <servlet-name>SpringMVC</servlet-name> <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class> <init-param> <param-name>contextConfigLocation</param-name> <param-value>classpath:spring-mvc.xml</param-value></init-param><load-on-startup>1</load-on-startup> </servlet><servlet-mapping> <servlet-name>SpringMVC</servlet-name><url-pattern>/</url-pattern></servlet-mapping>方案一:激活Tomcat的defaultServlet来处理静态文件
<servlet-mapping> <servlet-name>default</servlet-name> <url-pattern>*.html</url-pattern> </servlet-mapping> <servlet-mapping> <servlet-name>default</servlet-name> <url-pattern>*.js</url-pattern> </servlet-mapping> <servlet-mapping> <servlet-name>default</servlet-name> <url-pattern>*.css</url-pattern> </servlet-mapping>
在上面可以配置多项,当然这些应该写在DispatcherServlet的前面,让 defaultServlet先拦截,这个就不会进入spring mvc 了 。
方案二: 配置资源映射 mvc:resources
<mvc:resources mapping="/css/**" location="/css/" /><mvc:resources mapping="/js/**" location="/js/" /><mvc:resources mapping="/html/**" location="/html/" />使用<mvc:resources/>元素,把mapping的URI注册到SimpleUrlHandlerMapping的urlMap中,key为mapping的URI pattern值,而value为ResourceHttpRequestHandler,这样就巧妙的把对静态资源的访问由HandlerMapping转到ResourceHttpRequestHandler处理并返回,所以就支持classpath目录,jar包内静态资源的访问.另外需要注意的一点是,不要对SimpleUrlHandlerMapping设置defaultHandler.因为对static uri的defaultHandler就是ResourceHttpRequestHandler,否则无法处理static resources request
方案三 ,使用<mvc:default-servlet-handler/>
<mvc:default-servlet-handler/>会把"/**" url,注册到SimpleUrlHandlerMapping的urlMap中,把对静态资源的访问由HandlerMapping转到org.springframework.web.servlet.resource.DefaultServletHttpRequestHandler处理并返回.DefaultServletHttpRequestHandler使用就是各个Servlet容器自己的默认Servlet.
阅读全文
0 0
- spring mvc 不拦截静态资源
- spring-mvc不拦截静态资源的配置
- 关于spring mvc不拦截静态资源的配置
- Spring MVC 框架不拦截静态资源的配置
- spring mvc静态资源拦截问题
- Spring MVC 拦截静态资源的解决方案
- <mvc:default-servlet-handler/>不拦截静态资源的前提条件
- Spring-MVC 登录拦截与静态资源冲突的问题
- Spring MVC中css等静态资源被拦截解决办法
- springmvc不拦截静态资源
- SPRING SECURITY 拦截静态资源
- Spring MVC静态资源处理
- Spring MVC处理静态资源
- spring mvc静态资源处理
- Spring MVC静态资源处理
- Spring MVC静态资源处理
- Spring MVC静态资源处理
- Spring MVC静态资源处理
- elasticsearch5.x 集群管理工具head插件安装、nginx配置外网访问
- Mac下使用brew安装mongodb
- python DEAP学习1(遗传算法) 概览
- 【企业级框架整合】Springmvc+mybatis+restful+bootstrap框架整合
- zookeeper 的Watcher机制实现
- spring mvc 不拦截静态资源
- 如何实现:每天收集数据到表格,但只看到当天的数据?
- w_char 和 char 之间的转换
- Cassandra写入性能测试(集群环境)
- 编程第三十八天
- “奔三”了_程序员_你该怎么选择未来的路?
- 摄像机模型 坐标变换 单应矩阵资料
- 二叉搜索树的后序遍历序列
- Android中CardView使用