redis常用接口实现
Redis  /  管理员 发布于 7年前   194
在实际工作中,redis通常是作为一个常用的工具类,你只需要调用其即可,所以这里就统计了redis的一些常用接口方法与实现。这里是封装了单机版与集群版本的两种不同实现。
java是基于Jedis的jar包开发的,首先,你需要先下载安装这个jar包,这里就不提供了,直接网上查询就有。如果使用maven构建的话,也是很简单的,如下:这里依赖的是2.7.3版本,这个依赖哪个版本没有明确的规定,根据你自己的情况。
<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单机版本的实现,代码如下:
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;} @Overridepublic String set(String key, String value) {Jedis jedis = jedisPool.getResource();String result = jedis.set(key, value);jedis.close();return result;} @Overridepublic String get(String key) {Jedis jedis = jedisPool.getResource();String result = jedis.get(key);jedis.close();return result;} @Overridepublic Boolean exists(String key) {Jedis jedis = jedisPool.getResource();Boolean result = jedis.exists(key);jedis.close();return result;} @Overridepublic Long expire(String key, int seconds) {Jedis jedis = jedisPool.getResource();Long result = jedis.expire(key, seconds);jedis.close();return result;} @Overridepublic Long ttl(String key) {Jedis jedis = jedisPool.getResource();Long result = jedis.ttl(key);jedis.close();return result;} @Overridepublic Long incr(String key) {Jedis jedis = jedisPool.getResource();Long result = jedis.incr(key);jedis.close();return result;} @Overridepublic Long hset(String key, String field, String value) {Jedis jedis = jedisPool.getResource();Long result = jedis.hset(key, field, value);jedis.close();return result;} @Overridepublic String hget(String key, String field) {Jedis jedis = jedisPool.getResource();String result = jedis.hget(key, field);jedis.close();return result;} @Overridepublic Long hdel(String key, String... field) {Jedis jedis = jedisPool.getResource();Long result = jedis.hdel(key, field);jedis.close();return result;} @Overridepublic Boolean hexists(String key, String field) {Jedis jedis = jedisPool.getResource();Boolean result = jedis.hexists(key, field);jedis.close();return result;} @Overridepublic List<String> hvals(String key) {Jedis jedis = jedisPool.getResource();List<String> result = jedis.hvals(key);jedis.close();return result;} @Overridepublic Long del(String key) {Jedis jedis = jedisPool.getResource();Long result = jedis.del(key);jedis.close();return result;} }
三:redis集群版本的实现:具体代码如下:
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;} @Overridepublic String set(String key, String value) {return jedisCluster.set(key, value);} @Overridepublic String get(String key) {return jedisCluster.get(key);} @Overridepublic Boolean exists(String key) {return jedisCluster.exists(key);} @Overridepublic Long expire(String key, int seconds) {return jedisCluster.expire(key, seconds);} @Overridepublic Long ttl(String key) {return jedisCluster.ttl(key);} @Overridepublic Long incr(String key) {return jedisCluster.incr(key);} @Overridepublic Long hset(String key, String field, String value) {return jedisCluster.hset(key, field, value);} @Overridepublic String hget(String key, String field) {return jedisCluster.hget(key, field);} @Overridepublic Long hdel(String key, String... field) {return jedisCluster.hdel(key, field);} @Overridepublic Boolean hexists(String key, String field) {return jedisCluster.hexists(key, field);} @Overridepublic List<String> hvals(String key) {return jedisCluster.hvals(key);} @Overridepublic Long del(String key) {return jedisCluster.del(key);} }
更多redis知识请关注redis入门教程栏目。
以上就是redis常用接口实现的详细内容,更多请关注其它相关文章!
122 在
学历:一种延缓就业设计,生活需求下的权衡之选中评论 工作几年后,报名考研了,到现在还没认真学习备考,迷茫中。作为一名北漂互联网打工人..123 在
Clash for Windows作者删库跑路了,github已404中评论 按理说只要你在国内,所有的流量进出都在监控范围内,不管你怎么隐藏也没用,想搞你分..原梓番博客 在
在Laravel框架中使用模型Model分表最简单的方法中评论 好久好久都没看友情链接申请了,今天刚看,已经添加。..博主 在
佛跳墙vpn软件不会用?上不了网?佛跳墙vpn常见问题以及解决办法中评论 @1111老铁这个不行了,可以看看近期评论的其他文章..1111 在
佛跳墙vpn软件不会用?上不了网?佛跳墙vpn常见问题以及解决办法中评论 网站不能打开,博主百忙中能否发个APP下载链接,佛跳墙或极光..
Copyright·© 2019 侯体宗版权所有·
粤ICP备20027696号