[size=medium]因為redis3.0才出來,spring-data-redis正式版本還沒有支援redis-cluster。大概上官網看了一下,發現隻有1.7.0.RC1才支援,同時沒有找到關于jedis與spring-data-redis內建RedisTemplate的資料,是以看了一下原碼,寫了下面關于RedisTemplate的配置。[/size]
[quote]原創:[url]http://langmnm.iteye.com/admin/blogs/2286858[/url][/quote]
[size=x-large]一、redis-cluster構造[/size]
[quote]上節:[url]http://langmnm.iteye.com/blog/2286186[/url][/quote]
[size=x-large]二、與spring-data-redis內建[/size]
[size=large]1.JedisCluster[/size]
[size=medium]以叢集方式使用連接配接池,來直接使用redis相關指令。[/size]
[size=medium]spring.xml[/size]
connect-redis.properties
[quote][url]http://xyqck163.iteye.com/blog/2211108[/url][/quote]
[size=large]2.RedisTemplate[/size]
[size=medium]以叢集方式使用連接配接池,來使用模闆進行資料操作,key與value自動序列化存儲。[/size]
[size=medium]spring.xml[/size]
[quote]spring-data-redis提供了多種serializer政策,這對使用jedis的開發者而言,實在是非常便捷。sdr提供了4種内置的serializer:
JdkSerializationRedisSerializer:使用JDK的序列化手段(serializable接口,ObjectInputStrean,ObjectOutputStream),資料以位元組流存儲
StringRedisSerializer:字元串編碼,資料以string存儲
JacksonJsonRedisSerializer:json格式存儲
OxmSerializer:xml格式存儲
其中JdkSerializationRedisSerializer和StringRedisSerializer是最基礎的序列化政策,其中“JacksonJsonRedisSerializer”與“OxmSerializer”都是基于stirng存儲,是以它們是較為“進階”的序列化(最終還是使用string解析以及建構java對象)。
RedisTemplate中需要聲明4種serializer,預設為“JdkSerializationRedisSerializer”:
1) keySerializer :對于普通K-V操作時,key采取的序列化政策
2) valueSerializer:value采取的序列化政策
3) hashKeySerializer: 在hash資料結構中,hash-key的序列化政策
4) hashValueSerializer:hash-value的序列化政策
無論如何,建議key/hashKey采用StringRedisSerializer。
[url]http://www.360doc.com/content/15/0513/21/1073512_470277654.shtml[/url]
[/quote]
[size=medium]3. 測試代碼[/size]
控制台輸出: