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中,可以通过http://www.springframework.org/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文件,将标签加入即可。
分享到:
相关推荐
static存放静态资源,如CSS、JavaScript和图片。views存放JSP或Thymeleaf等视图模板文件。 在"spring-mvc-study.zip"项目中,我们可能能看到以下文件: 1. web.xml:配置了DispatcherServlet,指定了Spring MVC的...
2. `src/main/resources`:用于存储静态资源,如配置文件、国际化文件等。 3. `build.gradle`:Gradle构建脚本,定义了项目依赖和构建任务。 4. `gradlew` 和 `gradlew.bat`:这两个脚本分别用于Unix/Linux和Windows...
总的来说,"一个改进版的spring-mvc-showcase"项目展示了如何利用Spring MVC构建一个现代Web应用,并且可能涵盖了许多高级特性,如AOP(面向切面编程)、RESTful API设计、拦截器、数据校验、异常处理等。...
在Java Web开发中,Spring MVC和Spring Boot是两个非常重要的框架,它们都提供了对静态资源的处理机制。静态资源通常包括HTML、CSS、JavaScript、图片等文件,是构成Web应用程序用户体验的重要部分。本篇文章将详细...
Spring MVC 是一款强大的Java web开发框架,用于构建高效、可维护的Web应用程序。Maven 则是项目管理和依赖管理工具,使得开发人员可以方便地管理项目构建、报告和依赖关系。这个“Spring MVC-demo项目源码”是一个...
在 Spring MVC 项目中,我们通常会在这里声明对 Spring Framework、Spring MVC 和其他相关库的依赖。 4. **target**:这个目录包含了 Maven 构建过程中生成的中间文件和最终的可部署工件,如编译后的类文件、打包后...
在现代Java Web开发中,Spring MVC和MyBatis是两个非常重要的框架,它们分别负责控制层和数据访问层的处理。Spring MVC作为Spring框架的一部分,提供了强大的MVC(Model-View-Controller)架构支持,而MyBatis则是一...
3. **Spring MVC**:Spring MVC是Spring框架的一个模块,专门用于处理Web层的请求和响应。它提供了模型-视图-控制器(MVC)的设计模式,帮助开发者分离业务逻辑、数据处理和用户界面。在项目中,Spring MVC负责接收...
Spring MVC 是一个基于Java的轻量级Web应用框架,它为构建模型-视图-控制器(MVC)架构的应用程序提供...此外,文件中可能还包括错误处理、国际化、静态资源处理等相关配置,这些都是构建实际Web应用时经常遇到的问题。
- **RESTful支持**:Spring MVC提供对RESTful风格的URL处理,便于构建现代Web服务。 - **数据绑定**:自动将HTTP请求参数绑定到Java对象,减少手动代码。 - **异常处理**:统一的异常处理机制,简化错误处理。 2...
- **资源服务**: 可以配置 Spring MVC 来处理静态资源请求。 ### 总结 Spring Web MVC 提供了一个强大而灵活的框架来构建 Web 应用程序,它包含了各种功能和机制,使得开发者能够高效地开发出高性能、高可用性的 ...
### Spring MVC Step-by-Step中文版知识点概览 #### 一、Spring框架核心概念与组成部分 **1.... - **定义**:控制反转是一种...对于希望深入了解Spring MVC并具备一定Java基础的学习者来说,这份教程将是宝贵的资源。
Spring MVC是Spring框架的一部分,用于构建Web应用程序,而JasperReports是一个开源报告工具,用于生成静态和动态的业务报告。在这个项目中,开发者可能将JasperReports的功能与Spring MVC的控制器、服务和视图解析...
总结来说,Spring MVC对静态资源的处理涉及了资源配置、版本控制、自定义处理逻辑以及安全策略等多个方面。通过合理的配置,我们可以使Spring MVC更好地服务于我们的Web应用,提高性能和用户体验。
6. **过滤器链**:SpringSecurity的过滤器链对所有请求进行拦截,包括静态资源。理解并合理配置过滤器链顺序,可以避免因过滤器配置不当导致的资源访问问题。 7. **安全头部**:为了增强安全性,SpringSecurity可以...
六、Spring MVC mvc.xml配置文件片段讲解:Spring MVC通过配置文件来定义处理器映射、视图解析器、静态资源处理等。配置文件对于整个框架的运行至关重要。 七、Spring MVC如何访问到静态的文件:描述了如何配置...
该在线测试系统是一个使用Spring-MVC框架构建的简单示例,旨在模拟实际的在线考试环境,尤其是处理客观题型。Spring-MVC是Spring框架的一部分,它提供了模型-视图-控制器(MVC)的设计模式,使得开发人员能够更有效...
- **处理一般的 Spring MVC 异常**:Spring MVC 自身的一些异常可以在这里统一处理。 - **使用 @ResponseStatus 注解业务异常**:为自定义异常添加 HTTP 状态码。 #### Servlet 默认容器错误页面的定制化 - **Web ...
- **问题**:当使用默认的`DispatcherServlet`配置时,所有的URL请求都会被路由到Spring MVC控制器,这包括了对静态资源的请求。这会导致静态资源无法正常访问,因为控制器通常不处理这类请求。 - **解决方法**:...