redis-springboot-redistemplate更改序列化方式
redisTemplate 默认的序列化方式为 jdkSerializeable, StringRedisTemplate的默认序列化方式为StringRedisSerializer
可以通过手动配置, 将redisTemplate的序列化方式进行更改
package com.wenbronk.data.redis;import com.fasterxml.jackson.annotation.JsonAutoDetect; import com.fasterxml.jackson.annotation.PropertyAccessor; import com.fasterxml.jackson.databind.ObjectMapper; import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication; import org.springframework.context.annotation.Bean; import org.springframework.data.redis.connection.RedisConnectionFactory; import org.springframework.data.redis.core.RedisTemplate; import org.springframework.data.redis.serializer.Jackson2JsonRedisSerializer; import org.springframework.data.redis.serializer.StringRedisSerializer;/*** redis的启动类* Created by wenbronk on 2017/6/12.*/ @SpringBootApplication public class RedisApplication {public static void main(String[] args) {SpringApplication.run(RedisApplication.class, args);}/*** redisTemplate 序列化使用的jdkSerializeable, 存储二进制字节码, 所以自定义序列化类* @param redisConnectionFactory* @return*/@Beanpublic RedisTemplate<Object, Object> redisTemplate(RedisConnectionFactory redisConnectionFactory) {RedisTemplate<Object, Object> redisTemplate = new RedisTemplate<>();redisTemplate.setConnectionFactory(redisConnectionFactory);// 使用Jackson2JsonRedisSerialize 替换默认序列化Jackson2JsonRedisSerializer jackson2JsonRedisSerializer = new Jackson2JsonRedisSerializer(Object.class);ObjectMapper objectMapper = new ObjectMapper();objectMapper.setVisibility(PropertyAccessor.ALL, JsonAutoDetect.Visibility.ANY);objectMapper.enableDefaultTyping(ObjectMapper.DefaultTyping.NON_FINAL);jackson2JsonRedisSerializer.setObjectMapper(objectMapper);// 设置value的序列化规则和 key的序列化规则 redisTemplate.setValueSerializer(jackson2JsonRedisSerializer);redisTemplate.setKeySerializer(new StringRedisSerializer());redisTemplate.afterPropertiesSet();return redisTemplate;} }
转载于:https://www.cnblogs.com/wenbronk/p/6992615.html
redis-springboot-redistemplate更改序列化方式相关推荐
- redis 使用redisTemplate使用PipeLine方式 利用lRange 批量获取队列内容并移除当前获取的消息
Redis基础配置 配置解析方式,泛型类自动转换更加方便 private RedisTemplate redisTemplate;private RedisSerializer<String&g ...
- springboot系列——redisTemplate和stringRedisTemplate对比、redisTemplate几种序列化方式比较
文章目录 一.redisTemplate和stringRedisTemplate对比 1.StringRedisTemplate 2.RedisTemplate 二.redisTemplate序列化方 ...
- Redis - RedisTemplate及4种序列化方式深入解读
文章目录 概述 RedisTemplate StringRedisTemplate RedisSerializer 序列化 接口 JDK 序列化方式 (默认) String 序列化方式 JSON 序列 ...
- Redis序列化、RedisTemplate序列化方式大解读,介绍Genericjackson2jsonredisserializer序列化器的坑
前言 上一篇已经介绍了优雅的操作Redis: [小家Spring]Spring Boot中使用RedisTemplate优雅的操作Redis,并且解决RedisTemplate泛型注入的问题.本篇着重 ...
- 深入理解 Redis Template及4种序列化方式__spring boot整合redis实现RedisTemplate三分钟快速入门
概述 使用Spring 提供的 Spring Data Redis 操作redis 必然要使用Spring提供的模板类 RedisTemplate, 今天我们好好的看看这个模板类 . RedisTem ...
- Springboot下RedisTemplate的两种序列化方式
一.定义一个配置类,自定义RedisTemplate的序列化方式 @Configuration public class RedisConfig {@Beanpublic RedisTemplate& ...
- Redis学习篇3_事务及其监控(锁)、Jedis、SpringBoot整合Redis、RedisTemplate的json序列化、RedisUtil工具类
目录 事务及其监控(锁) Jedis SpringBoot整合Redis RedisTemplate 默认RedisTemplate来源 关于中文序列化问题 RedisUtil工具类 一.事务及其监控 ...
- springboot RedisTemplate 提示没有双引号序列化失败问题
/*** retemplate相关配置* @param factory* @return*/@Beanpublic RedisTemplate<String, Object> redisT ...
- 【springboot进阶】springboot集成fastjson(三)配置redis使用fastJson进行序列化
目录 一.引入依赖 二.添加redis连接配置 三.新建RedisConfig类配置 四.测试 五.踩过的坑 数字型的保存 对象的保存 上一章节,我们说到fastjson的自定义序列化和反序列化,这章 ...
最新文章
- 基于ESP32的竞赛裁判系统功能调试-激光信号调试
- android 首页布局变换,Android XML布局与View之间的转换
- WPF 实现大转盘抽奖~
- 2018蓝桥杯省赛---java---C---2(猴子分香蕉)
- 工作146:webstorm持续updating indices解决方法
- 设计模式1-简单工厂模式
- C语言学习笔记(零)
- 【LeetCode】【字符串】题号:*13. 罗马数字转整数
- 约架的节奏?BAT之后 小米加入地图生态资源争夺战
- Centos 8 阿里yum源配置
- 小编为你简单介绍基本ERP管理系统模块
- macOS调整分辨率与HiDPI
- 海拔高度与大气密度的关系函数
- 湖大计算机考研跟南航比,省三也可以逆袭进入985大学?这49所自主招生高校都收省三!...
- zk集群和clickhouse集群搭建
- 青海大学昆仑学院计算机机考,青 海 大 学 昆 仑 学 院 试 卷.doc
- python隐藏部分代码_python源码隐藏
- libvirt live migration 流程
- 茶 与 茶道 之 人生如茶
- 如何批量增加视频的音量(ffmpeg)