在拦截器中使用redis报错空指针

问题

当在拦截器中使用 redis 时,获取不到 RedisTemplate 对象

原因

拦截器在SpringContext初始化之前就执行了,即Bean初始化之前它就执行了,所以肯定是无法获取SpringIOC容器中的内容的

解决

提前实例化拦截器

在配置类里面先实例化拦截器,然后在添加拦截器时获取已实例化的拦截器Bean即可

注意,实例化后,下面注册拦截器要使用实例化的方法
registry.addInterceptor(getLoginUserInterceptor())

java 复制代码
    //提前实例化拦截器
    @Bean
    public LoginUserInterceptor getLoginUserInterceptor(){
        return new LoginUserInterceptor();
    }
相关推荐
Elastic 中国社区官方博客3 小时前
Elasticsearch:Workflows 介绍 - 9.3
大数据·数据库·人工智能·elasticsearch·ai·全文检索
仍然.3 小时前
MYSQL--- 聚合查询,分组查询和联合查询
数据库
一 乐3 小时前
校园二手交易|基于springboot + vue校园二手交易系统(源码+数据库+文档)
java·数据库·vue.js·spring boot·后端
啦啦啦_99993 小时前
Redis-0-业务逻辑
数据库·redis·缓存
自不量力的A同学3 小时前
Redisson 4.2.0 发布,官方推荐的 Redis 客户端
数据库·redis·缓存
Exquisite.3 小时前
Mysql
数据库·mysql
fengxin_rou4 小时前
[Redis从零到精通|第四篇]:缓存穿透、雪崩、击穿
java·redis·缓存·mybatis·idea·多线程
全栈前端老曹4 小时前
【MongoDB】深入研究副本集与高可用性——Replica Set 架构、故障转移、读写分离
前端·javascript·数据库·mongodb·架构·nosql·副本集
R1nG8634 小时前
CANN资源泄漏检测工具源码深度解读 实战设备内存泄漏排查
数据库·算法·cann
fengxin_rou4 小时前
黑马点评实战篇|第二篇:商户查询缓存
缓存