分析Jedis源码实现操作非关系型数据库Redis
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了分析Jedis源码实现操作非关系型数据库Redis,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含3969字,纯文字阅读大概需要6分钟。
内容图文
![分析Jedis源码实现操作非关系型数据库Redis](/upload/InfoBanner/zyjiaocheng/877/4d45f7e4990646159eb0b3fd5e5ce931.jpg)
如果测试项目用的maven依赖,先把maven坐标准备好
<!-- https://mvnrepository.com/artifact/redis.clients/jedis -->
<dependency>
<groupId>redis.clients</groupId>
<artifactId>jedis</artifactId>
<version>2.9.0</version>
</dependency>
import redis.clients.jedis.Jedis; import redis.clients.jedis.Tuple; import java.util.Map; import java.util.Set; /** * Jedis工具类 */ public class JedisUtil { private String ip ="127.0.0.1"; private int port = 8001; public JedisUtil(){ } public JedisUtil(String ip,int port){ this.ip = ip; this.port = port; } /** * 获得redis对象 * @return 获得redis对象 */ public Jedis createJedis(){ Jedis jedis = new Jedis(ip,port); return jedis; } /** * 获得redis对象 * @param ip 连接redis的IP地址 * @param port 连接redis的端口号 * @return 获得redis对象 */ public Jedis createJedis(String ip,int port){ Jedis jedis = new Jedis(ip,port); return jedis; } /** * 保存字符串 * @param key * @param val */ public void setString(String key,String val){ createJedis().set(key,val); } /** * 保存二进制 * @param key * @param val */ public void setByte(byte [] key,byte [] val){ createJedis().set(key, val); } /** * 根据key获得字符串 * @param key * @return */ public String getString(String key){ return createJedis().get(key); } /** * 获取二进制 * @param key * @return */ public byte [] getByte(byte [] key){ return createJedis().get(key); } /** * 根据key删除 * @param key */ public void del(String key){ createJedis().del(key); } /** * 保存整数 * @param key * @param val */ public void setInt(String key,String val){ } /** * 设置过期时间 * @param key 键 * @param val 值 * @param time 过期时间 */ public void setexBasic(String key,String val,int time){ createJedis().setex(key,time,val); } /** * 对二进制key-val设置过期时间 * @param key * @param time * @param val */ public void setexCyte(byte [] key,int time,byte [] val){ createJedis().setex(key,time,val); } /** *设置哈希值 * @param key * @param map */ public void setHash(String key, Map<String,String> map){ createJedis().hmset(key, map); } /** * 获取哈希值 * @param key * @param field * @return */ public String getHash(String key,String field){ return createJedis().hget(key,field); } /** * 向队列中放数据 * @param key * @param tag 0 左边,1右边 * @param strings */ public void setQueue(String key,int tag,String...strings){ if (tag == 0){ // 左边放 createJedis().lpush(key,strings); }else if (tag == 1){ // 右边放 createJedis().rpush(key, strings); } } /** * 向队列中获取数据 * @param key * @param tag 0 左边取,1右边取 * return */ public String getQueue(String key,int tag){ if (tag == 0){ // 左边取 return createJedis().lpop(key); }else if (tag == 1){ // 右边取 return createJedis().rpop(key); } return null; } /** * 添加集合 * @param key * @param strings */ public void sadd(String key,String...strings){ Jedis jedis = createJedis(); jedis.sadd(key, strings); jedis.close(); } /** * 获取差集 * @param strings * @return */ public Set<String> sdiff(String...strings){ Jedis jedis = createJedis(); Set<String> set = jedis.sdiff(strings); jedis.close(); return set; } /** * 获取交集 * @param strings * @return */ public Set<String> sinter(String...strings){ Jedis jedis = createJedis(); Set<String> set = jedis.sinter(strings); jedis.close(); return set; } /** * 添加有序集合 * @param key * @param map */ public void zadd(String key,Map<String,Double> map){ Jedis jedis = createJedis(); jedis.zadd(key, map); jedis.close(); } /** * 给元素增量 * @param key * @param score * @param member * @return 增量后的数 */ public Double zincreby(String key,double score,String member){ Jedis jedis = createJedis(); Double d = jedis.zincrby(key, score, member); return d; } /** * 返回升序排列的集合 * @param key * @return */ public Set<String> zrange(String key){ Jedis jedis = createJedis(); Set<String> set = jedis.zrange(key,0,-1); return set; } /** * 返回降序排列的集合 * @param key * @return */ public Set<String> zrevrange(String key){ Jedis jedis = createJedis(); Set<String> set = jedis.zrevrange(key,0,-1); return set; } /** * 返回降序排序的集合,带上分数 * @param key * @return */ public Set<Tuple> zrevrangeWithScores(String key){ Jedis jedis = createJedis(); Set<Tuple> set = jedis.zrevrangeWithScores(key,0,-1); return set; } }
内容总结
以上是互联网集市为您收集整理的分析Jedis源码实现操作非关系型数据库Redis全部内容,希望文章能够帮你解决分析Jedis源码实现操作非关系型数据库Redis所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。