admin管理员组文章数量:1794759
spring mvc
spring mvc - 对静态资源的处理 spring对静态资源文件(js css htm html jpg jepg png bmp)等的处理方式如下: 一、交由上级web容器处理,在web.xml中的org.springframework.web.servlet.DispatcherServlet 配置之前加入如下代码: <servlet-mapping> <servlet-name>default</servlet-name> <url-pattern>*.css</url-pattern> </servlet-mapping> 根据不同的资源文件制定不同的映射机制,其中servlet-name在tomcat中默认是default,该servlet在tomcat\\config\\web.xml文件中默认配置,不同的应用服务器对应的静态资源文件处理的servlet名称不尽相同,如下: tomcat,jboss,glassfish,jetty : defaut; weblogic : FileServlet; websphere : SimpleFileServlet; resin : resin-file; GAE : _ah_default 二、交由spring mvc:resources 处理 在dispatchServlet.xml文件中增加 <mvc:resources location="/WEB-INF/resource/" mapping="/resource/**"/> 该方式虽然静态资源文件可以访问了,但是如果系统配置了通配符的拦截器,静态资源还是会被拦截器拦截,如下: <mvc:interceptors> <mvc:interceptor> <mvc:mapping path="/*"/> <bean class="com.xinlong.cms.front.interceptor.CmsFrontInterceptor"></bean> </mvc:interceptor> </mvc:interceptors> 因此需要修改,如下: <mvc:interceptors> <mvc:interceptor> <mvc:mapping path="/*"/> <mvc:exclude-mapping path="/resource/**"/> <bean class="com.xinlong.cms.front.interceptor.CmsFrontInterceptor"></bean> </mvc:interceptor> </mvc:interceptors> 到此还有个问题mvc:exclude-mapping 标签不被spring-mvc-3.0.xsd支持,该配置在spring-mvc-3.2.xsd中,可以通过www.springframework/schema/mvc/spring-mvc-3.2.xsd获取,因此需要在spring-mvc-3.0.xsd文件中增加该标签,处理办法很简单,从网上下载spring-mvc-3.2.xsd,找到标签后,再找到spring.web.servlet-3.0.5.jar中的spring-mvc-3.0.xsd文件,将标签加入即可
版权声明:本文标题:spring mvc 内容由林淑君副主任自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:http://www.xiehuijuan.com/baike/1686614231a86322.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论