SpringBoot的webjars和静态资源映射规则
当我们的打包方式是jar时,springboot对我们的资源文件就有映射规则,所以我们必须去了解他
在springboot中web的配置都在WebMvcAutoConfiguration中,有个添加资源映射
1:其中有个/webjars/**,意思时/webjars/**下面所有文件都去classpath:/META-IN/resources/webjars/下面去找,比如你引入了jquery的jar包,他的目录结构就是这样的,正好对应这个映射,你就可以访问webjars.jquery/3.3.1/jquery.js,就可看到他的内容。在访问时只需要写webjars/下面的资源名称即可。
2:在源码里往下面翻,找到WebMvcProperties,从中可以点进去进而找到资源映射路径
/**访问当前项目的任何资源(静态资源的文件夹)
在项目中java和resources都是根路径,可以在resourcesz下面建立这几个文件夹,访问都是没问题的
当我们访问cssad资源时比如:localhost:8080/cssad就相当于去静态资源文件夹里面去找cssad
3:在源码中还有欢迎页的映射
然后点getWelcomPage(),点进去
然后再点getStaticWelcomPageLocations,点进去,然后就会发现路径都拼了index.html页面
要看是被谁映射就要点staticLocation,在点进去只会就会发现就是被 /** 映射,所以说,当访问localhost:8080/,他就会默认去找静态资源文件夹下的index.html,比如放在public问价夹下。
当然了也可以自己定义静态文件夹的映射路径,这里就不做介绍了。
希望能够对大家有所帮助吧!