Springboot中如何访问静态资源

- 日理万妓 2024-04-18 07:33 185阅读 0赞

文章借鉴:https://www.jianshu.com/p/a9e6edd46e98 写的简单明了,就直接拿过来用

  1. application中需要先行的两个配置项

1.1 spring.mvc.static-path-pattern

这个配置项是告诉springboot,应该以什么样的方式去寻找资源。默认配置为 /* 。换句话说,只有静态资源满足什么样的匹配条件,Spring Boot才会处理静态资源请求
比如下面这个配置

  1. spring.mvc.static-path-pattern=/soul/*

如果原先访问首页的地址是:http://localhost:8888/index.html
那么在你配置这个配置后,上面的访问就失效了,现在访问同样的页面需要这样访问:http://localhost:8888/soul/index.html

  • 问题1:配置这个配置后原本http://localhost:8888可以直接访问首页,但是现在http://localhost:8888/soul访问不了首页。

    • 后记:多次使用后发现只要配置了这个配置,不管配成什么,http://localhost:8888都访问不了首页。
  • 问题2:配置访问路径为/soul/后原本可以访问resources下其他文件夹的目录下的静态资源,现在不可以了。比如下面截图中test/test.html不能访问了,在没有配置为/soul/可以通过http://localhost:8888/test/test.html访问

format_png

1.2 spring.resources.static-locations

这个配置项是告诉springboot去哪找资源

  1. # 默认值为
  2. spring.resources.static-locations=classpath:/META-INF/resources/,classpath:/resources/,classpath:/static/,classpath:/public/

根据前后关系确定优先级,也就是说如果/META-INF/resources/目录和/resources都有一个index.html,那么根据默认的优先级,会去访问/META-INF/resources/下的资源。

发表评论

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

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

相关阅读