Spring MVC 获取静态资源处理方案学习总结

方案一、利用web服务器的默认servlet来处理

<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>

需要写在spring mvcDispatcherServlet前面,需要让web的默认servlet先进行拦截处理。

 

方案二、控制spring mvc的过滤规则(spring mvc传统的解决办法)

Spring mvcDispatcherServlet,过滤规则写成带后缀格式;同时后台响应代码也要进行相应更改。

<servlet-mapping> 
        <servlet-name>springMVC</servlet-name> 
        <url-pattern>/*.do</url-pattern> 
</servlet-mapping>

 

方案三、spring mvc配置文件中添加mvc:resources标签属性。

Spring3.0.4以后提供此标签。

可以将静态文件放在web目录下,打包到jar包中,或者其他别的地方,然后通过配置mvc:resources指向该路径。

<mvc:resources mapping="/static/**" location="/static/" />

此处将mapping值映射到ResourceHttpRequestHandler进行处理,而location值指向静态资源的物理路径。

 

方案四、spring mvc配置文件中添加mvc:default-servlet-handler标签。

该标签把 "/**" url,注册到SimpleUrlHandlerMappingurlMap,把对静态资源的访问由 HandlerMapping 转到 org.springframework.web.servlet.resource.DefaultServletHttpRequestHandler 处理并返回.

DefaultServletHttpRequestHandler使用就是各个 Servlet 容器自己的默认 Servlet.

<mvc:default-servlet-handler />

 

web服务器默认servlet

1.tomcat---default

2.jetty---default

3.JBoss---default

4.glassfish---default

5. Google App Engine--- _ah_default

6. Resin--- resin-file

7. WebLogic--- FileServlet

8. WebSphere--- SimpleFileServlet


原本是从多个地方收集的,最后却看到了这篇神文,好吧,怎么看也像是抄的。

http://unmi.cc/spring-mvc-access-static-resources-jpgjscss/

转载于:https://my.oschina.net/varusyan/blog/412338

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值