spring mvc 中对静态资源的访问配置
在web.xml中配置spring mc servlet
对url-pattern设置时,排除在spring的servlet之外。
<servlet><servlet-name>dispatcherServlet</servlet-name><servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class><init-param><param-name>contextConfigLocation</param-name><param-value>/WEB-INF/mvc-config.xml</param-value></init-param><load-on-startup>1</load-on-startup></servlet><servlet-mapping><servlet-name>dispatcherServlet</servlet-name><url-pattern>/</url-pattern></servlet-mapping>
上面的路径配置’/’中,把所有的url处理全部交给spring mvc来处理了。这样静态资源也会被其拦截处理。
改进:
修改spring mvc的servlet处理的url-pattern,指定其具体处理路径。
在web.xml中使用容器对应的default servlet优先处理静态资源
每个java web容器都有其default servlet。在spring mvc servlet直接,先配置default servlet处理静态资源
- Tomcat, Jetty, JBoss, and GlassFish 默认 Servlet的名字 -- "default"
- Resin 默认 Servlet的名字 -- "resin-file"
- WebLogic 默认 Servlet的名字 -- "FileServlet"
<servlet-mapping><servlet-name>default</servlet-name><url-pattern>*.jpg</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>
<servlet-mapping><servlet-name>default</servlet-name><url-pattern>*.html</url-pattern>
</servlet-mapping>
在spring mvc的配置中设置方法有2种
选择其中任意一种
<!-- 方式1 静态资源访问处理 这种方法就是利用容器的default servlet来处理先 -->
<mvc:default-servlet-handler/><!-- 方式2 静态资源访问处理 org.springframework.web.servlet-3.1.4版本及以后使用 -->
<!-- Handles HTTP GET requests for /resources/** by efficiently serving up static resources in the ${webappRoot}/resources directory -->
<mvc:resources mapping="/static/**" location="/static/" />
<mvc:resources mapping="/resources/**" location="/resources/" />
<mvc:resources mapping="/images/**" location="/images/" />
<mvc:resources mapping="/js/**" location="/js/" />
在服务器的load balance中配置
其实,静态的资源不需要进入到spring mvc等java web容器内处理,为性能考虑,可以在前面过滤处理了。
尤其在分布式的环境中,更应如此。
spring mvc 中对静态资源的访问配置相关推荐
- Spring MVC中静态资源的处理
Spring MVC中静态资源的处理 REST风格的资源URL中不带后后缀,比如 /blog/tom -> 用户tom的blog资源 /order/1234 -> 订单号为1234的订单资 ...
- spring mvc 中静态资源404、302错误
[求教]spring mvc 中静态资源404.302错误 (2019/3/22补充)在新的项目中也偶尔遇到资源被拦截的情况(前提我已经设置了各种静态资源不被拦截的措施),至今仍然没能找到具体原因,所 ...
- Spring-Boot:写出来的网站访问不到静态资源?怎样通过url访问SpringBoot项目中的静态资源?localhost:8989/favicon.ico访问不了工程中的图标资源?
Spring-Boot:Spring-Boot写出来的网站访问不到静态资源?怎样通过url访问SpringBoot项目中的静态资源?localhost:8989/favicon.ico访问不了工程中的 ...
- spring-mvc里的 mvc:resources 及静态资源访问
在进行Spring MVC的配置时,通常我们会配置一个dispatcher servlet用于处理对应的URL.配置如下: <servlet><servlet-name>Spr ...
- Spring Boot实战:静态资源处理
前两章我们分享了Spring boot对Restful 的支持,不过Restful的接口通常仅仅返回数据.而做web开发的时候,我们往往会有很多静态资源,如html.图片.css等.那如何向前端返回静 ...
- SpringBoot项目的静态资源的访问及存放
在springBoot项目中,如果是只做后端的微服务,比较简单,直接写后端代码即可,但是部分情况下会需要页面的展示,所以在这个时候就需要进行一些配置来满足页面的展示 下面是application.ym ...
- 大数据WEB阶段 Servlet配置优先级 , Spring容器设置对静态资源放行
Servlet配置优先级 , Spring容器设置对静态资源放行 零.目录 servlet优先级 Spring容器对静态资源放行 一.servlet优先级 web.xml时整个web应用的核心配置文件 ...
- SpringBoot整合Thymeleaf模板引擎以及静态资源的访问
SpringBoot整合Thymeleaf模板引擎静态资源访问的配置 Thymeleaf是一个现代服务器端Java模板引擎,适用于Web和独立环境,能够处理HTML,XML,JavaScript,CS ...
- java在spring mvc中的图片接收与发送处理
1.作为client发送和获取图片 1.1.发送图片 作为client时发送图片通常是通过from-data的multipart形式来发送的,这时我们就在模拟浏览器的form文件表单来提交请求,mul ...
最新文章
- python入门用spyder还是jupyter_python3工作环境部署+spyder3+jupyter notebook
- executequery方法_【接口测试】soapui中数字、字符串、日期时间、数据库连接参数化的设置方法...
- java cron表达式_Java 程序员都应该去使用一下这款强大的国产工具类库
- C# 解析 Targa文件 (TGA) 图形
- Python2.7本地安装numpy包
- CSS笔记 - fgm练习 2-10 - 提示框效果 (清除子元素浮动高度塌陷的影响)
- 关于Django ORM filter方法小结
- 小博老师精选Java十大CMS ——建站神器
- 关于安全校验代码的一些心得
- 越界操作导致程序崩溃的原理
- Matlab和Fluent联合仿真实现涡激振动
- springboot毕设项目超市仓库管理系统15g4i(java+VUE+Mybatis+Maven+Mysql)
- C4D插件X-Particles粒子特效(五)
- 牛客刷题——part2
- Springboot + Spring Security 实现前后端分离登录认证及权限控制
- [解疑][VS]Visual Studio软件编程时,ID号的格式ID_,IDS_,IDC_,IDI_,IDB_,IDD_之间有什么区别?
- Docker 存储卷
- 每日一招:什么样的股票才能越跌越买
- Promise 多接口同时调用
- 【小程序】腾讯云服务配置小程序流程