在實際工作中,redis通常是作為一個常用的工具類,你只需要調(diào)用其即可,所以這里就統(tǒng)計了redis的一些常用接口方法與實現(xiàn)。這里是封裝了單機版與集群版本的兩種不同實現(xiàn)。
Java是基于Jedis的jar包開發(fā)的,首先,你需要先下載安裝這個jar包,這里就不提供了,直接網(wǎng)上查詢就有。如果使用maven構(gòu)建的話,也是很簡單的,如下:這里依賴的是2.7.3版本,這個依賴哪個版本沒有明確的規(guī)定,根據(jù)你自己的情況。
<dependency><groupid>redis.clients</groupid><artifactid>jedis</artifactid><version>2.7.3</version></dependency>
一:redis常用接口如下:
public?interface?JedisClient?{ //賦值的方法 String?set(String?key,?String?value); //獲取值的方法 String?get(String?key); //判斷是否存在 Boolean?exists(String?key); Long?expire(String?key,?int?seconds); Long?ttl(String?key); Long?incr(String?key); //hset??方法 Long?hset(String?key,?String?field,?String?value); //hget方法 String?hget(String?key,?String?field); ????//刪除?has方法 Long?hdel(String?key,?String...?field); ????//判斷has是否存在 Boolean?hexists(String?key,?String?field); List<string>?hvals(String?key); //刪除方法 Long?del(String?key); }</string>
二:redis單機版本的實現(xiàn),代碼如下:
import?redis.clients.jedis.Jedis; import?redis.clients.jedis.JedisPool; ? public?class?JedisClientPool?implements?JedisClient?{ private?JedisPool?jedisPool; ? public?JedisPool?getJedisPool()?{ return?jedisPool; } ? public?void?setJedisPool(JedisPool?jedisPool)?{ this.jedisPool?=?jedisPool; } ? @Override public?String?set(String?key,?String?value)?{ Jedis?jedis?=?jedisPool.getResource(); String?result?=?jedis.set(key,?value); jedis.close(); return?result; } ? @Override public?String?get(String?key)?{ Jedis?jedis?=?jedisPool.getResource(); String?result?=?jedis.get(key); jedis.close(); return?result; } ? @Override public?Boolean?exists(String?key)?{ Jedis?jedis?=?jedisPool.getResource(); Boolean?result?=?jedis.exists(key); jedis.close(); return?result; } ? @Override public?Long?expire(String?key,?int?seconds)?{ Jedis?jedis?=?jedisPool.getResource(); Long?result?=?jedis.expire(key,?seconds); jedis.close(); return?result; } ? @Override public?Long?ttl(String?key)?{ Jedis?jedis?=?jedisPool.getResource(); Long?result?=?jedis.ttl(key); jedis.close(); return?result; } ? @Override public?Long?incr(String?key)?{ Jedis?jedis?=?jedisPool.getResource(); Long?result?=?jedis.incr(key); jedis.close(); return?result; } ? @Override public?Long?hset(String?key,?String?field,?String?value)?{ Jedis?jedis?=?jedisPool.getResource(); Long?result?=?jedis.hset(key,?field,?value); jedis.close(); return?result; } ? @Override public?String?hget(String?key,?String?field)?{ Jedis?jedis?=?jedisPool.getResource(); String?result?=?jedis.hget(key,?field); jedis.close(); return?result; } ? @Override public?Long?hdel(String?key,?String...?field)?{ Jedis?jedis?=?jedisPool.getResource(); Long?result?=?jedis.hdel(key,?field); jedis.close(); return?result; } ? @Override public?Boolean?hexists(String?key,?String?field)?{ Jedis?jedis?=?jedisPool.getResource(); Boolean?result?=?jedis.hexists(key,?field); jedis.close(); return?result; } ? @Override public?List<string>?hvals(String?key)?{ Jedis?jedis?=?jedisPool.getResource(); List<string>?result?=?jedis.hvals(key); jedis.close(); return?result; } ? @Override public?Long?del(String?key)?{ Jedis?jedis?=?jedisPool.getResource(); Long?result?=?jedis.del(key); jedis.close(); return?result; } ? }</string></string>
三:redis集群版本的實現(xiàn):具體代碼如下:
import?redis.clients.jedis.JedisCluster; ? public?class?JedisClientCluster?implements?JedisClient?{ private?JedisCluster?jedisCluster; ? public?JedisCluster?getJedisCluster()?{ return?jedisCluster; } ? public?void?setJedisCluster(JedisCluster?jedisCluster)?{ this.jedisCluster?=?jedisCluster; } ? @Override public?String?set(String?key,?String?value)?{ return?jedisCluster.set(key,?value); } ? @Override public?String?get(String?key)?{ return?jedisCluster.get(key); } ? @Override public?Boolean?exists(String?key)?{ return?jedisCluster.exists(key); } ? @Override public?Long?expire(String?key,?int?seconds)?{ return?jedisCluster.expire(key,?seconds); } ? @Override public?Long?ttl(String?key)?{ return?jedisCluster.ttl(key); } ? @Override public?Long?incr(String?key)?{ return?jedisCluster.incr(key); } ? @Override public?Long?hset(String?key,?String?field,?String?value)?{ return?jedisCluster.hset(key,?field,?value); } ? @Override public?String?hget(String?key,?String?field)?{ return?jedisCluster.hget(key,?field); } ? @Override public?Long?hdel(String?key,?String...?field)?{ return?jedisCluster.hdel(key,?field); } ? @Override public?Boolean?hexists(String?key,?String?field)?{ return?jedisCluster.hexists(key,?field); } ? @Override public?List<string>?hvals(String?key)?{ return?jedisCluster.hvals(key); } ? @Override public?Long?del(String?key)?{ return?jedisCluster.del(key); } ? }</string>
更多redis知識請關注redis入門教程欄目。
? 版權聲明
文章版權歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載。
THE END
喜歡就支持一下吧
相關推薦