SpringBoot 中- HandlerInterceptor 中 @Autowired 和 @Resource 为空

简介: SpringBoot 中- HandlerInterceptor 中 @Autowired 和 @Resource 为空

今天遇到这样一个问题,在整合jwt 配置拦截器的时候,遇到这样一个问题:

6cb85ac8aac0406abe583a344a225e99.png

public class JWTInterceptor implements HandlerInterceptor {
    @Autowired
    User user;  //null 
}

解决方法:

错误之前:

@Configuration
public class InterceptorConfig implements WebMvcConfigurer {
    @Override
    public void addInterceptors(InterceptorRegistry registry) {
        registry.addInterceptor(new JWTInterceptor());
    }
}

修改为:这样,PermissionInterceptor 由 @Bean 方法生成,其生命周期由 Spring 管理,Spring 将扫描 @Autowired 目标并注入它们

@Configuration
public class InterceptorConfig implements WebMvcConfigurer {
    @Override
    public void addInterceptors(InterceptorRegistry registry) {
        registry.addInterceptor(jwtInterceptor())
                .excludePathPatterns("/user/**")
                .addPathPatterns("/**");
    }
    @Bean
    public JWTInterceptor jwtInterceptor() {
        return new JWTInterceptor();
    }
}


目录
相关文章
|
2月前
|
Java
springboot打包错误:Failed to execute goal org.apache.maven.plugins:maven-resources-plugin:3.2.0:resource
springboot打包错误:Failed to execute goal org.apache.maven.plugins:maven-resources-plugin:3.2.0:resource
35 0
|
24天前
|
安全 Java 编译器
springboot @resource与private final声明式的有何区别??
【6月更文挑战第3天】在Spring Boot中,@Resource 和 private final 常用于依赖注入,但它们的用途和行为有一些重要的区别。
15 1
|
2月前
|
安全 Java Spring
springboot @Resource、@AutoWaire的用法实战
【4月更文挑战第3天】在Spring Boot中,@Autowired和@Resource注解都用于自动注入依赖,但它们在底层工作方式和使用的场合上存在一些差异。理解这些差异有助于更有效地使用Spring框架。
61 1
|
2月前
|
开发框架 Java 测试技术
Spring Boot 项目中使用 `@Autowired` 注解,合理吗?
Spring Boot 项目中使用 `@Autowired` 注解,合理吗?
147 1
Spring Boot 项目中使用 `@Autowired` 注解,合理吗?
|
2月前
|
Java 数据库连接 API
SpringBoot【问题 01】借助@PostConstruct解决使用@Component注解的类用@Resource注入Mapper接口为null的问题(原因解析+解决方法)
SpringBoot【问题 01】借助@PostConstruct解决使用@Component注解的类用@Resource注入Mapper接口为null的问题(原因解析+解决方法)
173 0
|
9月前
|
设计模式 Java 测试技术
大公司为什么禁止在SpringBoot项目中使用@Autowired注解?
Spring官方已不推荐使用Autowired字段/属性注入bean,,一些大公司的新项目也明令禁止使用了。 1. 说明 最近公司升级框架,由原来的spring framerwork 3.0升级到5.0,然后写代码的时候突然发现idea在属性注入的@Autowired注解上给出警告提示,就像下面这样的,也挺懵逼的,毕竟这么写也很多年了。
|
8月前
|
Java Spring
Idea spring boot cannot autowired 解决方法
Idea spring boot cannot autowired 解决方法
|
8月前
|
Java 程序员
在Springboot HandlerInterceptor中获取GET和POST请求参数
上面RequestWrapper的代码我查阅资料的时候在多篇博文中看到了,但是单有RequestWrapper还不足以完成整个请求,而且我看很多网络上的博客都是只在Interceptor中Wapper,但实际这样是不对的,而且也完全不需要,因为必须要替换掉整个请求链路中的Request才行。这里我们只需要在Filter中将普通的Request替换成我们自己的RequestWrapper
249 0
|
12月前
|
设计模式 Java 测试技术
大公司为什么禁止在 Spring Boot 项目中使用 @Autowired 注解?
大公司为什么禁止在 Spring Boot 项目中使用 @Autowired 注解?
123 0
|
12月前
|
Java 测试技术
【Java】SpringBoot项目中resource目录下有多个配置文件,如何指定某个特定的配置文件生效?
【Java】SpringBoot项目中resource目录下有多个配置文件,如何指定某个特定的配置文件生效?
271 0