springboot-web-静态资源规则和定制化

1.静态资源访问

静态资源目录

  只要静态资源(图片,js,html等)放在类路径下: /static (or /public or /resources or /META-INF/resources)

  访问 : 当前项目根路径/ + 静态资源名

1.原理: 静态映射  /**

  请求进来,先去找Controller看能不能处理。如果能处理的话就走了requestmapping对应的请求了!不能处理的所有请求又都交给静态资源处理器。静态资源也找不到则响应404页面。

  例如:我们在默认的springboot的resources下新建一个 /public目录。再往里放一个静态资源google.png。直接访问:项目/静态资源名

  springboot-web-静态资源规则和定制化

 

2.我们不想让它直接访问项目的根路径。我们可以增加配置,增加访问静态资源的前缀

  在application.yaml里面添加上配置后,我们访问上面的静态资源就得去访问  项目/res/静态资源名

spring:
  mvc:
    static-path-pattern: /res/**

  这个例子就是得去访问:http://localhost:8080/res/google.png。访问之前的请求地址会报404.

3.当我们不想使用springboot指定的  /static (or /public or /resources or /META-INF/resources)这些静态资源路径的时候。我们可以自定义静态资源路径

resources:
  static-locations: [classpath:/haha/]

springboot-web-静态资源规则和定制化springboot-web-静态资源规则和定制化

 

  修改完后原先的的public下的google.png访问不到了。只能访问到1.png

 

 4.webjars

  网站地址:https://www.webjars.org/

  我们可以吧jquery等资源文件用maven引入。引入后就可以使用webjar请访问这些静态资源了

  例子:我们引入jquery的依赖.根据导入依赖的路径去请求静态资源  http://localhost:8080/webjars/jquery/3.5.1/jquery.js

<dependency>
    <groupId>org.webjars</groupId>
    <artifactId>jquery</artifactId>
    <version>3.5.1</version>
</dependency>

  springboot-web-静态资源规则和定制化springboot-web-静态资源规则和定制化

 

   请求静态资源成功!!

 

 

  

 



上一篇:python-bytes-str转换


下一篇:JS处理html的编码(encode)与解码(decode)