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更改序列化方式相关推荐

  1. redis 使用redisTemplate使用PipeLine方式 利用lRange 批量获取队列内容并移除当前获取的消息

    Redis基础配置 配置解析方式,泛型类自动转换更加方便 private RedisTemplate redisTemplate;private RedisSerializer<String&g ...

  2. springboot系列——redisTemplate和stringRedisTemplate对比、redisTemplate几种序列化方式比较

    文章目录 一.redisTemplate和stringRedisTemplate对比 1.StringRedisTemplate 2.RedisTemplate 二.redisTemplate序列化方 ...

  3. Redis - RedisTemplate及4种序列化方式深入解读

    文章目录 概述 RedisTemplate StringRedisTemplate RedisSerializer 序列化 接口 JDK 序列化方式 (默认) String 序列化方式 JSON 序列 ...

  4. Redis序列化、RedisTemplate序列化方式大解读,介绍Genericjackson2jsonredisserializer序列化器的坑

    前言 上一篇已经介绍了优雅的操作Redis: [小家Spring]Spring Boot中使用RedisTemplate优雅的操作Redis,并且解决RedisTemplate泛型注入的问题.本篇着重 ...

  5. 深入理解 Redis Template及4种序列化方式__spring boot整合redis实现RedisTemplate三分钟快速入门

    概述 使用Spring 提供的 Spring Data Redis 操作redis 必然要使用Spring提供的模板类 RedisTemplate, 今天我们好好的看看这个模板类 . RedisTem ...

  6. Springboot下RedisTemplate的两种序列化方式

    一.定义一个配置类,自定义RedisTemplate的序列化方式 @Configuration public class RedisConfig {@Beanpublic RedisTemplate& ...

  7. Redis学习篇3_事务及其监控(锁)、Jedis、SpringBoot整合Redis、RedisTemplate的json序列化、RedisUtil工具类

    目录 事务及其监控(锁) Jedis SpringBoot整合Redis RedisTemplate 默认RedisTemplate来源 关于中文序列化问题 RedisUtil工具类 一.事务及其监控 ...

  8. springboot RedisTemplate 提示没有双引号序列化失败问题

    /*** retemplate相关配置* @param factory* @return*/@Beanpublic RedisTemplate<String, Object> redisT ...

  9. 【springboot进阶】springboot集成fastjson(三)配置redis使用fastJson进行序列化

    目录 一.引入依赖 二.添加redis连接配置 三.新建RedisConfig类配置 四.测试 五.踩过的坑 数字型的保存 对象的保存 上一章节,我们说到fastjson的自定义序列化和反序列化,这章 ...

最新文章

  1. 基于ESP32的竞赛裁判系统功能调试-激光信号调试
  2. android 首页布局变换,Android XML布局与View之间的转换
  3. WPF 实现大转盘抽奖~
  4. 2018蓝桥杯省赛---java---C---2(猴子分香蕉)
  5. 工作146:webstorm持续updating indices解决方法
  6. 设计模式1-简单工厂模式
  7. C语言学习笔记(零)
  8. 【LeetCode】【字符串】题号:*13. 罗马数字转整数
  9. 约架的节奏?BAT之后 小米加入地图生态资源争夺战
  10. Centos 8 阿里yum源配置
  11. 小编为你简单介绍基本ERP管理系统模块
  12. macOS调整分辨率与HiDPI
  13. 海拔高度与大气密度的关系函数
  14. 湖大计算机考研跟南航比,省三也可以逆袭进入985大学?这49所自主招生高校都收省三!...
  15. zk集群和clickhouse集群搭建
  16. 青海大学昆仑学院计算机机考,青 海 大 学 昆 仑 学 院 试 卷.doc
  17. python隐藏部分代码_python源码隐藏
  18. libvirt live migration 流程
  19. 茶 与 茶道 之 人生如茶
  20. 如何批量增加视频的音量(ffmpeg)

热门文章

  1. 收藏 | 程序员生涯指南,在GitHub上获3.6万星
  2. Java 线程之间通信
  3. Realsense的使用
  4. 信安教程第二版-第22章网站安全需求分析与安全保护工程
  5. winform中openfiledialog过滤压缩文件格式_5种最佳摄影师图像文件格式
  6. 神经网络入门回顾(感知器、多层感知器)
  7. 如何设置显示内容而不是显示对象
  8. Struts2之数据标签(二)
  9. 基于Myeclipse的三大框架(SSH)整合
  10. 随笔编号-03 基本类型相互转换集合