RedisTemplate的序列和反序列化机制讲解

DBC 1.6K 0

简介:RedisTemplate的序列和反序列化机制讲解

  • 上集问题
    • 同个key为啥获取不到值,核心就是序列化机制导致key不一样
  • 什么是序列化
    • 把对象转换为字节序列的过程称为对象的序列化。
    • 把字节序列恢复为对象的过程称为对象的反序列化。
    • 对象的序列化主要有两种用途
      • 把对象的字节序列永久地保存到硬盘上,通常存放在一个文件中
      • 在网络上传送对象的字节序列。
  • Redis为什么要序列化
    • 性能可以提高,不同的序列化方式性能不一样
    • 可视化工具更好查看
      • 采用默认的jdk方式会乱码(POJO类需要实现Serializable接口)
      • 采用JSON方式则不用,且可视化工具更好查看

 

  • 自定义redis序列化方式,提供了多种可选择策略
    • JdkSerializationRedisSerializer
      • POJO对象的存取场景,使用JDK本身序列化机制
      • 默认机制 ObjectInputStream/ObjectOutputStream进行序列化操作
    • StringRedisSerializer
      • Key或者value为字符串
    • Jackson2JsonRedisSerializer
      • 利用jackson-json工具,将pojo实例序列化成json格式存储
    • GenericFastJsonRedisSerializer
      • 另一种javabean与json之间的转换,同时也需要指定Class类型

发表评论 取消回复
表情 图片 链接 代码

分享