您的位置:首页 > 编程语言 > Java开发

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

2015-05-08 00:00 330 查看
摘要: 关于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 mvc的DispatcherServlet前面,需要让web的默认servlet先进行拦截处理。

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

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

<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,注册到SimpleUrlHandlerMapping的urlMap中,把对静态资源的访问由 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/
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  spring mvc