1+ package com .xf .redis .demo ;
2+
3+ import java .util .Set ;
4+
5+ import org .springframework .beans .factory .annotation .Autowired ;
6+ import org .springframework .beans .factory .annotation .Qualifier ;
7+ import org .springframework .data .redis .connection .jedis .JedisConnectionFactory ;
8+
9+ import redis .clients .jedis .Jedis ;
10+
11+ /**
12+ * 封装redis 缓存服务器服务接口
13+ * @author hk
14+ *
15+ * 2012-12-16 上午3:09:18
16+ */
17+ public class SpringRedisHello {
18+
19+ /**
20+ * 通过key删除(字节)
21+ * @param key
22+ */
23+ public void del (byte [] key ){
24+ this .getJedis ().del (key );
25+ }
26+ /**
27+ * 通过key删除
28+ * @param key
29+ */
30+ public void del (String key ){
31+ this .getJedis ().del (key );
32+ }
33+
34+ /**
35+ * 添加key value 并且设置存活时间(byte)
36+ * @param key
37+ * @param value
38+ * @param liveTime
39+ */
40+ public void set (byte [] key ,byte [] value ,int liveTime ){
41+ this .set (key , value );
42+ this .getJedis ().expire (key , liveTime );
43+ }
44+ /**
45+ * 添加key value 并且设置存活时间
46+ * @param key
47+ * @param value
48+ * @param liveTime
49+ */
50+ public void set (String key ,String value ,int liveTime ){
51+ this .set (key , value );
52+ this .getJedis ().expire (key , liveTime );
53+ }
54+ /**
55+ * 添加key value
56+ * @param key
57+ * @param value
58+ */
59+ public void set (String key ,String value ){
60+ this .getJedis ().set (key , value );
61+ }
62+ /**添加key value (字节)(序列化)
63+ * @param key
64+ * @param value
65+ */
66+ public void set (byte [] key ,byte [] value ){
67+ this .getJedis ().set (key , value );
68+ }
69+ /**
70+ * 获取redis value (String)
71+ * @param key
72+ * @return
73+ */
74+ public String get (String key ){
75+ String value = this .getJedis ().get (key );
76+ return value ;
77+ }
78+ /**
79+ * 获取redis value (byte [] )(反序列化)
80+ * @param key
81+ * @return
82+ */
83+ public byte [] get (byte [] key ){
84+ return this .getJedis ().get (key );
85+ }
86+
87+ /**
88+ * 通过正则匹配keys
89+ * @param pattern
90+ * @return
91+ */
92+ public Set <String > keys (String pattern ){
93+ return this .getJedis ().keys (pattern );
94+ }
95+
96+ /**
97+ * 检查key是否已经存在
98+ * @param key
99+ * @return
100+ */
101+ public boolean exists (String key ){
102+ return this .getJedis ().exists (key );
103+ }
104+ /**
105+ * 清空redis 所有数据
106+ * @return
107+ */
108+ public String flushDB (){
109+ return this .getJedis ().flushDB ();
110+ }
111+ /**
112+ * 查看redis里有多少数据
113+ */
114+ public long dbSize (){
115+ return this .getJedis ().dbSize ();
116+ }
117+ /**
118+ * 检查是否连接成功
119+ * @return
120+ */
121+ public String ping (){
122+ return this .getJedis ().ping ();
123+ }
124+ /**
125+ * 获取一个jedis 客户端
126+ * @return
127+ */
128+ private Jedis getJedis (){
129+ if (jedis == null ){
130+ return jedisConnectionFactory .getShardInfo ().createResource ();
131+ }
132+ return jedis ;
133+ }
134+ private SpringRedisHello (){
135+
136+ }
137+ //操作redis客户端
138+ private static Jedis jedis ;
139+ @ Autowired
140+ @ Qualifier ("jedisConnectionFactory" )
141+ private JedisConnectionFactory jedisConnectionFactory ;
142+ }
0 commit comments