package com.config; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; import org.springframework.web.servlet.config.annotation.InterceptorRegistry; import org.springframework.web.servlet.config.annotation.ResourceHandlerRegistry; import org.springframework.web.servlet.config.annotation.WebMvcConfigurationSupport; import com.interceptor.AuthorizationInterceptor; @Configuration public class InterceptorConfig extends WebMvcConfigurationSupport{ @Bean public AuthorizationInterceptor getAuthorizationInterceptor() { return new AuthorizationInterceptor(); } @Override public void addInterceptors(InterceptorRegistry registry) { registry.addInterceptor(getAuthorizationInterceptor()).addPathPatterns("/**").excludePathPatterns("/static/**"); super.addInterceptors(registry); } /** * springboot 2.0配置WebMvcConfigurationSupport之后,会导致默认配置被覆盖,要访问静态资源需要重写addResourceHandlers方法 */ @Override public void addResourceHandlers(ResourceHandlerRegistry registry) { registry.addResourceHandler("/**") .addResourceLocations("classpath:/resources/") .addResourceLocations("classpath:/static/") .addResourceLocations("classpath:/admin/") .addResourceLocations("classpath:/front/") .addResourceLocations("classpath:/public/"); super.addResourceHandlers(registry); } }
时间: 2023-06-10 16:08:09 浏览: 61
这是一个 Java Spring 的配置类,用于配置拦截器和静态资源访问路径。其中,@Configuration 注解表示这是一个配置类,@Bean 注解表示该方法返回一个 Bean 对象,getAuthorizationInterceptor() 方法返回一个 AuthorizationInterceptor 对象,用于验证用户登录状态。addInterceptors() 方法用于添加拦截器,这里将 AuthorizationInterceptor 对象添加到所有路径上,但排除了 /static/ 路径。addResourceHandlers() 方法用于配置静态资源访问路径,这里将 classpath:/resources/、classpath:/static/、classpath:/admin/、classpath:/front/、classpath:/public/ 这几个路径下的静态资源都配置为可访问的。
相关问题
import org.springframework.context.annotation.Configuration;解释
该代码行是一个 Java 类的声明,使用了 Spring Framework 的注解 @Configuration。这个注解表示该类是一个配置类,它会被 Spring 加载,并且用于配置应用程序的组件。
@Configuration 注解是用于启用 Spring 的 JavaConfig 特性的,它允许开发者使用 Java 代码来代替 XML 来配置 Spring 容器。在这个类中,开发者可以使用 @Bean 注解来创建和配置 Spring Bean,从而将它们添加到 Spring 容器中。
总之,@Configuration 注解告诉 Spring,这个类是一个配置类,它包含了 Spring Bean 的定义和配置,Spring 需要加载这个类,并将其中的 Bean 加载到容器中供其他组件使用。
import org.springframework.context.annotation.Configuration; 注释
这是一个Java类的注解,用于标识该类为Spring的配置类。在Spring应用程序中,我们可以使用@Configuration注解来定义一些Bean,并配置一些Bean之间的依赖关系。通过将@Configuration注解添加到类上,Spring将自动扫描该类,并将其中的Bean注册到应用程序的上下文中。这个类通常会包含@Bean注解的方法,用于定义Bean的实例化和配置。