当我们的打包方式是jar时,springboot对我们的资源文件就有映射规则,所以我们必须去了解他

 在springboot中web的配置都在WebMvcAutoConfiguration中,有个添加资源映射

SpringBoot的webjars和静态资源映射规则

SpringBoot的webjars和静态资源映射规则

1:其中有个/webjars/**,意思时/webjars/**下面所有文件都去classpath:/META-IN/resources/webjars/下面去找,比如你引入了jquery的jar包,他的目录结构就是这样的,正好对应这个映射,你就可以访问webjars.jquery/3.3.1/jquery.js,就可看到他的内容。在访问时只需要写webjars/下面的资源名称即可。

SpringBoot的webjars和静态资源映射规则

2:在源码里往下面翻,找到WebMvcProperties,从中可以点进去进而找到资源映射路径

/**访问当前项目的任何资源(静态资源的文件夹)

SpringBoot的webjars和静态资源映射规则

在项目中java和resources都是根路径,可以在resourcesz下面建立这几个文件夹,访问都是没问题的

SpringBoot的webjars和静态资源映射规则

当我们访问cssad资源时比如:localhost:8080/cssad就相当于去静态资源文件夹里面去找cssad

3:在源码中还有欢迎页的映射

SpringBoot的webjars和静态资源映射规则

然后点getWelcomPage(),点进去

SpringBoot的webjars和静态资源映射规则

然后再点getStaticWelcomPageLocations,点进去,然后就会发现路径都拼了index.html页面

SpringBoot的webjars和静态资源映射规则

要看是被谁映射就要点staticLocation,在点进去只会就会发现就是被   /**  映射,所以说,当访问localhost:8080/,他就会默认去找静态资源文件夹下的index.html,比如放在public问价夹下。

当然了也可以自己定义静态文件夹的映射路径,这里就不做介绍了。

SpringBoot的webjars和静态资源映射规则

希望能够对大家有所帮助吧!

相关文章:

  • 2021-09-08
  • 2021-11-30
  • 2021-09-08
  • 2021-10-01
  • 2021-11-30
  • 2021-12-10
  • 2021-06-29
  • 2018-09-19
猜你喜欢
  • 2021-11-30
  • 2019-03-14
  • 2020-09-25
  • 2021-08-17
  • 2018-01-26
  • 2021-08-07
  • 2021-11-03
  • 2021-12-01
相关资源
相似解决方案