最近在做QQ登录功能的时候,做一些必要的笔记,一来是对自己学习的知识的巩固,二来对有同样问题的人有参考作用
一 代码解释
看完自定义访问静态资源不知道大家有没有猜到为什么springboot可以访问/META-INF/resources,resources,static,public这4个文件夹下的静态资源,并且直接访问图片名称即可。下面我们来看一下springboot中的源码:
- 打开WebMvcAutoConfiguration类找到addResourceHandlers方法:
从图中我们可以看到首先将变量staticPathPattern赋值然后将获取的值赋给资源访问路径方法,下面我们看一下staticPathPattern的值为什么 - 打开WebMvcProperties类我们可以找到以下代码:
从图中我们可以看到值为/**这也就解释了为什么springboot在访问静态资源的时候只访问资源啊名称即可。 - 下面我们继续查看WebMvcAutoConfiguration类:
- 打开ResourceProperties类我们可以看到以下俩段代码:
在CLASSPATH_RESOURCE_LOCATIONS[] 这个数组中我们可以看到
“classpath:/META-INF/resources/”, “classpath:/resources/”, “classpath:/static/”, “classpath:/public/”这4个属性,这就解释了为什么springboot可以直接访问1./META-INF/resources 2.resources 3.static 4.public这4个文件夹下的静态资源。
二 拓展
三 总结
如有错误恳请指正,如有侵权请联系我删除
参考文章:https://blog.csdn.net/qq_34797335/article/details/80194137