📌  相关文章
📜  <mvc:resources mapping=" resources **" location=" WEB-INF resources " >(1)

📅  最后修改于: 2023-12-03 15:29:13.957000             🧑  作者: Mango

Spring MVC中的资源处理

Spring MVC提供了<mvc:resources>标签用于处理静态资源。它可以将请求映射到静态资源的位置,并将其提供给客户端。

注意事项
  • 资源要放在webapp/WEB-INF目录下的resources目录下,不能放在WEB-INF目录下。
  • 静态资源请求的url路径是mapping属性指定的值加上相对路径,例如/resources/js/main.js
配置
XML配置
<mvc:resources mapping="/resources/**" location="/WEB-INF/resources/"/>
  • mapping属性:请求的url匹配模式,支持Ant风格的路径匹配。
  • location属性:资源的真实路径。如果使用了文件系统资源而不是classpath资源,可以使用file:前缀指定绝对路径。
Java配置

使用Java配置可以通过实现WebMvcConfigurer接口的addResourceHandlers方法来配置资源处理。

@Configuration
@EnableWebMvc
public class MvcConfig implements WebMvcConfigurer {
    @Override
    public void addResourceHandlers(ResourceHandlerRegistry registry) {
        registry.addResourceHandler("/resources/**")
                .addResourceLocations("/WEB-INF/resources/");
    }
}
使用

将资源放置在指定的目录下,浏览器就可以通过请求对应的url路径获取资源了。

<script type="text/javascript" src="/resources/js/main.js"></script>