springboot整合redis报java.lang.ClassCastException: java.util.LinkedHashMap cannot be cast to...
·
准备
思路
我们如果想用redis进行token的登录状态的缓存的话我们验证令牌的时候获取对应的值的时候对象不会直接转换为对应的实体类返回的是一个LinkedHashMap的对象,但是我们可以先直接获取对应的string形式的json对象,那么我们用gson就可以反向解析为需要的对象
编写
导包
<dependency>
<groupId>com.google.code.gson</groupId>
<artifactId>gson</artifactId>
</dependency>
核心代码
String keyVal="3260b96e-0905-4e53-8704-012a334f520a-bbedf08a-f3f2-4b80-8f2e-e3e69eaeb2fd";
System.out.println(redisTemplate.opsForValue().get(keyVal));
String s = redisTemplate.opsForValue().get().toString();
//Token是对应的实体类,我们获取到redis对象的json字符串之后就可以用gson转换为对象了
Token token = new Gson().fromJson(s, Token.class);
System.out.println(token);
魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。
更多推荐


所有评论(0)