您好,登錄后才能下訂單哦!
今天小編給大家講的是redis常用接口實(shí)現(xiàn)方法,很多人都不太了解,今天小編為了讓大家更加了解redis常用接口實(shí)現(xiàn)方法,所以給大家總結(jié)了以下內(nèi)容,一起往下看吧。一定會(huì)有所收獲的哦。
在實(shí)際工作中,redis通常是作為一個(gè)常用的工具類,你只需要調(diào)用其即可,所以這里就統(tǒng)計(jì)了redis的一些常用接口方法與實(shí)現(xiàn)。這里是封裝了單機(jī)版與集群版本的兩種不同實(shí)現(xiàn)。
java是基于Jedis的jar包開發(fā)的,首先,你需要先下載安裝這個(gè)jar包,這里就不提供了,直接網(wǎng)上查詢就有。如果使用maven構(gòu)建的話,也是很簡(jiǎn)單的,如下:這里依賴的是2.7.3版本,這個(gè)依賴哪個(gè)版本沒有明確的規(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); }
二:redis單機(jī)版本的實(shí)現(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; } }
三:redis集群版本的實(shí)現(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); } }
以上就是redis常用接口實(shí)現(xiàn)方法的詳細(xì)內(nèi)容了,看完之后是否有所收獲呢?如果想了解更多相關(guān)內(nèi)容,歡迎來億速云行業(yè)資訊!
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。