SpringMvc配置静态资源访问路径的实现
作者:psudd
本文主要介绍了SpringMvc配置静态资源访问路径的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
1. 整体流程
1. 写一个配置类继承WebMvcConfigurationSupport
2. 利用 registry.addResourceHandler("访问路径").addResourceLocations("分配资源目录"); 将想要映射的访问路径令其去访问分配的资源路径当中
核心:会将前面匹配的( ** )当中的路径作为相对路径,动态的添加到后面的目录路径当中去,将两个路径连起来去动态访问资源 前后的访问路径和资源目录的书写一定要可以匹配连接上,会将前面匹配路径作为相对路径去资源目录当中进行寻找(非常关键)
@Configuration public class WebMvcConfig extends WebMvcConfigurationSupport { @Override protected void addResourceHandlers(ResourceHandlerRegistry registry) { registry.addResourceHandler("/Test/**").addResourceLocations("classpath:/D1/"+""); } }
2. registry.addResourceHandler()
2.1 函数分析
a. 该函数允许对于指定匹配的pathPatter添加一个资源处理程序(ResourceHandlerRegistration),对于与指定路径匹配的资源路径将调用该资源处理程序
b. 允许添加多个匹配的路径, 合法满足一个即可
public ResourceHandlerRegistration addResourceHandler(String... pathPatterns) { ResourceHandlerRegistration registration = new ResourceHandlerRegistration(pathPatterns); this.registrations.add(registration); return registration; }
2.2 结果演示
关键a:对于路径资源只需要匹配其中一个即可进行访问
关键b: 对于可能存在包含的路径,系统会自动先将更精确的路径进行优先匹配
3. ResourceHandlerRegistration.addResourceLocations()
3.1 函数分析
a. 对于成功匹配的路径,添加一个或多个资源位置(有效的目录),从中提供静态内容。按照书写的顺序进行依次匹配
b. 允许添加多个资源路径,逐个匹配
public ResourceHandlerRegistration addResourceLocations(String... locations) { this.locationValues.addAll(Arrays.asList(locations)); return this; }
3.2 结果演示
关键a:允许匹配多个路径资源目录里
关键b: 会按顺序匹配资源目录(这个不同于上面路径匹配无序不影响结果,这个资源目录的匹配与书写顺序有关,优先匹配写在前面的资源目录)
到此这篇关于SpringMvc配置静态资源访问路径的实现的文章就介绍到这了,更多相关SpringMvc静态资源访问路径内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!