SpringBoot - 实现静态资源的访问

ゞ 浴缸里的玫瑰 2022-09-15 05:46 362阅读 0赞

叙述

当我们使用 IntelliJ IDEA 创建 Spring Boot 项目,会默认创建 classpath:/static/ 目录,我们直接把静态资源放在这个目录下即可。

原文:SpringBoot - 实现静态资源的访问(附:修改过滤规则、静态资源位置)

我们直接在浏览器中输入“http://localhost:8080/java.png”即可看到我们添加的这张图片。

原文:SpringBoot - 实现静态资源的访问(附:修改过滤规则、静态资源位置)

自定义策略

如果默认的静态资源过滤策略不能满足开发需求,也可以自定义静态资源过滤策略,自定义的方式有如下两种。

通过配置:

我们在 application.properties 中直接定义过滤规则和静态资源位置

  • 过滤规则改为 /static
  • 静态资源位置仍然是 classpath:/static/ 没有变化

    spring.mvc.static-path-pattern=/static/**
    spring.resources.static-locations=classpath:/static/

重启项目,我们这次可以在浏览器中输入“http://localhost:8080/static/java.png”来访问添加的静态图片。

原文:SpringBoot - 实现静态资源的访问(附:修改过滤规则、静态资源位置)

Java编码:

  1. package com.example.demo;
  2. import org.springframework.stereotype.Component;
  3. import org.springframework.web.servlet.config.annotation.ResourceHandlerRegistry;
  4. import org.springframework.web.servlet.config.annotation.WebMvcConfigurer;
  5. /**
  6. * 静态资源映射
  7. */
  8. @Component
  9. public class MyWebMvcConfig implements WebMvcConfigurer {
  10. @Override
  11. public void addResourceHandlers(ResourceHandlerRegistry registry) {
  12. registry.addResourceHandler("/static/**")
  13. .addResourceLocations("classpath:/static/");
  14. }
  15. }

重启项目,效果同上面是一样的。我们同样可以在浏览器中输入“http://localhost:8080/static/java.png”来访问添加的静态图片。

发表评论

表情:
评论列表 (有 0 条评论,362人围观)

还没有评论,来说两句吧...

相关阅读

    相关 SpringBoot 直接访问静态资源

    一般现在都前后端分离方式,SpringBoot主要提供接口服务,但有时候有一些小项目就希望一个jar前后端都搞定,因此一些页面等静态资源都放入SpringBoot中。 这里记录