您好,登錄后才能下訂單哦!
這篇文章給大家介紹Spring Data Redis的示例分析,內容非常詳細,感興趣的小伙伴們可以參考借鑒,希望對大家能有所幫助。
Spring-Data-Redis是Spring大家族的一部分,提供了在Spring應用中通過簡單的配置訪問Redis服務,對Redis底層開發包(Jedis、JRedis、Redisson)進行了高度封裝,RedisTemplate提供了Redis各種操作、異常處理及序列化,支持發布訂閱。 Spring-Data-Redis針對jedis提供了如下功能:
連接池自動管理,提供了一個高度封裝的“RedisTemplate”類
針對jedis客戶端中大量api進行了歸類封裝,將同一類型操作封裝為operation接口如下:
ValueOperations:簡單K-V操作
SetOperations: set類型數據操作
ZSetOperations: zset類型數據操作
HashOperations: hash類型的數據操作
ListOperations: list類型的數據操作
Redis可以存儲鍵與5種不同數據結構類型之間的映射,這5種數據結構類型分別為String(字符串)、List(列表)、Set(集合)、Hash(散列)和 Zset(有序集合)。
Spring封裝了RedisTemplate對象來進行對Redis的各種操作,它支持所有的Redis原生的api。RedisTemplate位于spring-data-redis包下。
RedisTemplate在Spring代碼中的結構如下:
org.springframework.data.redis.core Class RedisTemplate<K,V> java.lang.Object org.springframework.data.redis.core.RedisAccessor org.springframework.data.redis.core.RedisTemplate<K,V>
Type Parameters:
K
模板中的Redis key的類型(通常為String)如:RedisTemplate<String, Object> 注意:如果沒特殊情況,切勿定義成RedisTemplate<Object, Object>,否則根據里氏替換原則,使用的時候會造成類型錯誤 。
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的示例分析就分享到這里了,希望以上內容可以對大家有一定的幫助,可以學到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。