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

问题

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

原因

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

解决

提前实例化拦截器

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

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

java 复制代码
    //提前实例化拦截器
    @Bean
    public LoginUserInterceptor getLoginUserInterceptor(){
        return new LoginUserInterceptor();
    }
相关推荐
一 乐5 分钟前
旅游|内蒙古景点旅游|基于Springboot+Vue的内蒙古景点旅游管理系统设计与实现(源码+数据库+文档)
开发语言·前端·数据库·vue.js·spring boot·后端·旅游
bing.shao14 分钟前
如何降低redis哈希值冲突概率
数据库·redis·哈希算法
ckm紫韵15 分钟前
redis查询速度快的原因?
数据库·redis·缓存
yookay zhang33 分钟前
达梦数据复制软件DMDRS
数据库
拾忆,想起1 小时前
TCP滑动窗口:网络世界的“智能流量阀门”
java·网络·数据库·网络协议·tcp/ip·php·哈希算法
懒羊羊不懒@1 小时前
【MySQL | 基础】概念
数据库·mysql
yookay zhang1 小时前
达梦新云文档数据库分享
数据库
熙客4 小时前
TiDB:分布式关系型数据库
java·数据库·分布式·tidb
你想考研啊8 小时前
oracle导出 导入
数据库·oracle
韩立学长9 小时前
基于Springboot的旧时月历史论坛4099k6s9(程序、源码、数据库、调试部署方案及开发环境)系统界面展示及获取方式置于文档末尾,可供参考。
数据库·spring boot·后端