千家信息网

Spring Data Redis的示例分析

发表于:2024-12-03 作者:千家信息网编辑
千家信息网最后更新 2024年12月03日,这篇文章给大家介绍Spring Data Redis的示例分析,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。Spring Data Redis介绍Spring-Data-Redi
千家信息网最后更新 2024年12月03日Spring Data Redis的示例分析

这篇文章给大家介绍Spring Data Redis的示例分析,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。

Spring Data Redis介绍

Spring-Data-Redis是Spring大家族的一部分,提供了在Spring应用中通过简单的配置访问Redis服务,对Redis底层开发包(Jedis、JRedis、Redisson)进行了高度封装,RedisTemplate提供了Redis各种操作、异常处理及序列化,支持发布订阅。 Spring-Data-Redis针对jedis提供了如下功能:

  1. 连接池自动管理,提供了一个高度封装的"RedisTemplate"类

  2. 针对jedis客户端中大量api进行了归类封装,将同一类型操作封装为operation接口如下:

  • ValueOperations:简单K-V操作

  • SetOperations: set类型数据操作

  • ZSetOperations: zset类型数据操作

  • HashOperations: hash类型的数据操作

  • ListOperations: list类型的数据操作

Redis 数据结构简介

Redis可以存储键与5种不同数据结构类型之间的映射,这5种数据结构类型分别为String(字符串)、List(列表)、Set(集合)、Hash(散列)和 Zset(有序集合)。

RedisTemplate介绍

Spring封装了RedisTemplate对象来进行对Redis的各种操作,它支持所有的Redis原生的api。RedisTemplate位于spring-data-redis包下。

RedisTemplate在Spring代码中的结构如下:

org.springframework.data.redis.coreClass RedisTemplatejava.lang.Object    org.springframework.data.redis.core.RedisAccessor        org.springframework.data.redis.core.RedisTemplate

Type Parameters:

K

模板中的Redis key的类型(通常为String)如:RedisTemplate 注意:如果没特殊情况,切勿定义成RedisTemplate,否则根据里氏替换原则,使用的时候会造成类型错误 。

V

模板中的Redis value的类型

StringRedisTemplate与RedisTemplate

  • 两者的关系是StringRedisTemplate继承RedisTemplate。

  • 两者的数据是不共通的;也就是说StringRedisTemplate只能管理StringRedisTemplate里面的数据,RedisTemplate只能管理RedisTemplate中的数据。

  • SDR默认采用的序列化策略有两种,一种是String的序列化策略,一种是JDK的序列化策略。 StringRedisTemplate默认采用的是String的序列化策略,保存的key和value都是采用此策略序列化保存的。 RedisTemplate默认采用的是JDK的序列化策略,保存的key和value都是采用此策略序列化保存的。

Spring Data Redis使用案例

关于Spring Data Redis的示例分析就分享到这里了,希望以上内容可以对大家有一定的帮助,可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看到。

0