SpringMvc配置静态资源访问路径的实现

 更新时间:2023年07月21日 08:30:58   作者: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静态资源访问路径内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • 深入理解Spring MVC的数据转换

    深入理解Spring MVC的数据转换

    这篇文章主要给大家介绍了关于Spring MVC数据转换的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起看看吧。
    2017-09-09
  • 浅谈java实现重载的方法

    浅谈java实现重载的方法

    方法重载是让类以统一的方式处理不同类型数据的一种手段。多个同名函数同时存在,具有不同的参数个数/类型。重载Overloading是一个类中多态性的一种表现。Java的方法重载,就是在类中可以创建多个方法,它们具有相同的名字,但具有不同的参数和不同的定义。
    2015-09-09
  • Spring零基础入门WebFlux响应式编程

    Spring零基础入门WebFlux响应式编程

    Spring 提供了两个并行堆栈,一种是基于带有 Spring MVC 和 Spring Data 结构的 Servlet API,另一个是完全反应式堆栈,它利用了 Spring WebFlux 和 Spring Data 的反应式存储库,这篇文章主要介绍了Spring-webflux 响应式编程,需要的朋友可以参考下
    2022-10-10
  • springmvc拦截器登录验证示例

    springmvc拦截器登录验证示例

    本篇文章主要介绍了springmvc拦截器登录验证示例,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-03-03
  • Java8接口默认静态方法及重复注解原理解析

    Java8接口默认静态方法及重复注解原理解析

    这篇文章主要介绍了Java8接口默认静态方法及重复注解原理解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2020-04-04
  • java验证码组件kaptcha使用方法

    java验证码组件kaptcha使用方法

    这篇文章主要介绍了java验证码组件kaptcha使用方法,很不错的一个组件,可以在JAVA开发中使用,大家都试试吧
    2013-11-11
  • Mybatis-Plus中使用@DS注解动态选择数据源的源码解读

    Mybatis-Plus中使用@DS注解动态选择数据源的源码解读

    这篇文章主要介绍了Mybatis-Plus中使用@DS注解动态选择数据源的源码解读,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2023-07-07
  • Java多线程事务回滚@Transactional失效处理方案

    Java多线程事务回滚@Transactional失效处理方案

    这篇文章主要介绍了Java多线程事务回滚@Transactional失效处理方案,文章围绕主题展开详细的内容介绍,具有一定的参考价值,需要的朋友可以参考一下
    2022-08-08
  • Java Spring AOP之PointCut案例详解

    Java Spring AOP之PointCut案例详解

    这篇文章主要介绍了Java Spring AOP之PointCut案例详解,本篇文章通过简要的案例,讲解了该项技术的了解与使用,以下就是详细内容,需要的朋友可以参考下
    2021-09-09
  • 简单了解java局部变量与成员变量的区别

    简单了解java局部变量与成员变量的区别

    这篇文章主要介绍了简单了解java局部变量与成员变量的区别,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2019-10-10

最新评论