Spring data redis乱码问题
SpringBoot提供Redis存储序列化,常用的有一下几种:
JdkSerializationRedisSerializer:将数据序列化为对象 默认的
StringRedisSerializer:将数据序列化为字符串
Jackson2JsonRedisSerializer:将数据序列化为json
GenericJackson2JsonRedisSerializer 和上面的Jackson2..对比推荐使用,具体百度.
FastJson2JsonRedisSerializer 阿里巴巴FastJson
配置redis序列化方式,redisConfiguration类:
package com.meeno.wzq.configuration;import com.fasterxml.jackson.annotation.JsonAutoDetect;
import com.fasterxml.jackson.annotation.PropertyAccessor;
import com.fasterxml.jackson.databind.DeserializationFeature;
import com.fasterxml.jackson.databind.ObjectMapper;
import org.apache.shiro.session.Session;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.data.redis.connection.RedisConnectionFactory;
import org.springframework.data.redis.core.RedisTemplate;
import org.springframework.data.redis.core.StringRedisTemplate;
import org.springframework.data.redis.serializer.Jackson2JsonRedisSerializer;
import org.springframework.data.redis.serializer.JdkSerializationRedisSerializer;
import org.springframework.data.redis.serializer.RedisSerializer;
import org.springframework.data.redis.serializer.StringRedisSerializer;/*** @description: redis配置类* @author: Wzq* @create: 2019-10-28 17:32*/
@Configuration
public class RedisConfiguration {/**** SpringBoot提供的Redis存储序列化方式,常用的有以下几种:* JdkSerializationRedisSerializer:将数据序列化为对象* StringRedisSerializer:将数据序列化为字符串* Jackson2JsonRedisSerializer:将数据序列化为json* GenericJackson2JsonRedisSerializer* FastJson2JsonRedisSerializer*//*** RedisTemplate配置* @param factory* @return*/@Beanpublic RedisTemplate<Object, Object> redisTemplate(RedisConnectionFactory factory) {RedisTemplate<Object, Object> redisTemplate = new RedisTemplate<>();redisTemplate.setConnectionFactory(factory);Jackson2JsonRedisSerializer jackson2JsonRedisSerializer = new Jackson2JsonRedisSerializer(Object.class);ObjectMapper om = new ObjectMapper();om.setVisibility(PropertyAccessor.ALL, JsonAutoDetect.Visibility.ANY);om.enableDefaultTyping(ObjectMapper.DefaultTyping.NON_FINAL);om.configure(DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES, false);jackson2JsonRedisSerializer.setObjectMapper(om);// 设置value的序列化规则和 key的序列化规则redisTemplate.setKeySerializer(new StringRedisSerializer());redisTemplate.setValueSerializer(new JdkSerializationRedisSerializer());redisTemplate.setHashKeySerializer(new StringRedisSerializer());redisTemplate.setHashValueSerializer(jackson2JsonRedisSerializer);redisTemplate.afterPropertiesSet();return redisTemplate;}}
代码说明:
redisTemplate.setKeySerializer(new StringRedisSerializer());
使用字符串系列化的方式,设置redis的key~
redisTemplate.setValueSerializer(new JdkSerializationRedisSerializer());
使用JDK默认的序列化方式,设置reidis的value~
redisTemplate.setHashKeySerializer(new StringRedisSerializer());
使用字符串系列化的方式,设置redis的集合key~
redisTemplate.setHashValueSerializer(jackson2JsonRedisSerializer);
使用将数据序列化为json的方式,设置redis的集合的Value~
技术支持:高岳峰,闫宇峰,施凯雷,杨珂
他的个人博客地址:http://120.78.93.197/
这是我的公众号 有最新的it咨询,和个人工作的记录:
这是我的个人微信遇到问题欢迎,提问:
最后加上高质量的淘宝店:如有质量问题随时滴滴我,童叟无欺!
Spring data redis乱码问题相关推荐
- Spring data redis 异常
2019独角兽企业重金招聘Python工程师标准>>> spring 集成 spring-data-redis 版本: spring低版本 + spring-data-redis 高 ...
- 使用Spring Data Redis操作Redis(集群版)
说明:请注意Spring Data Redis的版本以及Spring的版本!最新版本的Spring Data Redis已经去除Jedis的依赖包,需要自行引入,这个是个坑点.并且会与一些低版本的Sp ...
- Redis - Spring Data Redis 操作 Jedis 、Lettuce 、 Redisson
文章目录 官网 Jedis VS Lettuce Jedis Code POM依赖 配置文件 配置类 单元测试 Lettuce Code Redisson Code POM依赖 配置文件 配置类 单元 ...
- Spring Boot使用Spring Data Redis操作Redis(单机/集群)
说明:Spring Boot简化了Spring Data Redis的引入,只要引入spring-boot-starter-data-redis之后会自动下载相应的Spring Data Redis和 ...
- Java Spring Data Redis实战与配置参数详解 application.properties...
Redis作为开源分布式高并发缓存,使用范围非常广泛,主流互联网公司几乎都在使用. Java Spring Boot 2.0实战开发Redis缓存可以参考下面的步骤,Redis安装可以直接使用Linu ...
- Spring Data Redis与Jedis的选择(转)
说明:内容可能有点旧,需要在业务上做权衡. Redis的客户端有两种实现方式,一是可以直接调用Jedis来实现,二是可以使用Spring Data Redis,通过Spring的封装来调用.应该使用哪 ...
- Spring Data Redis—Pub/Sub(附Web项目源码)
一.发布和订阅机制 当一个客户端通过 PUBLISH 命令向订阅者发送信息的时候,我们称这个客户端为发布者(publisher). 而当一个客户端使用 SUBSCRIBE 或者 PSUBSCRIBE ...
- 一文搞定 Spring Data Redis 详解及实战
转载自 一文搞定 Spring Data Redis 详解及实战 SDR - Spring Data Redis的简称. Spring Data Redis提供了从Spring应用程序轻松配置和访问 ...
- Spring Data Redis:Sentinel的高可用性
1.概述 为了使Redis具有高可用性,我们可以使用Spring Data Redis对Redis Sentinel的支持. 借助Sentinel,我们可以创建自动抵御某些故障的Redis部署. Re ...
最新文章
- Linux——Linux概念架构的理解
- 如何知道我的电脑是多少位 ?
- word 插入代码_Word教程:最神奇的快捷键:Alt+X,一秒变出各种符号!
- Nginx之进程间的通信机制-Channel
- 深入研究Python 世界的规则,我的薪资直接翻倍
- 互联网晚报 | 11月11日 星期四 | 腾讯第三季度营收1424亿元;华为捐赠百万价值职业技能券;货拉拉成立司机权益保障委员会...
- NPM Unexpected end of JSON input while parsing near
- Access宏学习总结
- 5.3 - 抽屉新热榜
- JAVA点餐系统计算机毕业设计Mybatis+系统+数据库+调试部署
- python给ppt表格加边框_带你用Python玩转PPT
- 软件工程实践结对作业一
- 推荐一款Mac上好用的Markdown编辑器
- python快速入门神器 知乎_太香了!墙裂推荐6个Python数据分析神器!!
- iOS 使用Zebra打印机打印标签
- 西电2020 python OJ作业(50道题目,持续更新)
- 声网再亏损,故事好讲但不好听
- 批量抓取并保存考拉海购上的宝贝商品主图和细节图
- php怎么格式化json,phpJSON数据格式化(美化)的方法
- doc88文档下载方法
热门文章
- MPB:农科院田健、韩东飞等-​​水稻根系互作功能微生物的筛选方法
- 如何入门生信Linux
- R语言ggplot2可视化设置不同的图像主题(theme):使用各种不同的主题(theme)可视化数据、单的黑白主题theme_bw主题(theme)、默认的主题(theme)可视化数据
- Error in bl_make_text_box(token, drawing_context$gp, drawing_context$yoff_pt) : function ‘Rcpp_preci
- 如何从Oracle数据库中的表中获取列名(字段名)列表?
- R语言广义线性模型Logistic回归模型C Statistics计算
- JS+库+框架+工具
- 大数据时代千帆竞发,三代测序激流勇进
- A Crowdsourcing Method for Correcting Sequencing Errors for the Third-generation Sequencing Data 一种用
- Dijkstra 贪心算法 动态规划