redis集群javaApi

pom.xml需要这2个包

	
	<!-- https://mvnrepository.com/artifact/redis.clients/jedis -->
	<dependency>
	    <groupId>redis.clients</groupId>
	    <artifactId>jedis</artifactId>
	    <version>2.8.0</version>
	</dependency>
		
	 <!-- https://mvnrepository.com/artifact/net.sourceforge.cobertura/cobertura -->
	<dependency>
	    <groupId>net.sourceforge.cobertura</groupId>
	    <artifactId>cobertura</artifactId>
	    <version>2.0.3</version>
	</dependency>



代码:

import java.io.IOException;
import java.util.HashSet;
import java.util.List;
import java.util.Set;


import redis.clients.jedis.HostAndPort;
import redis.clients.jedis.JedisCluster;

/**
* @ClassName: RedisJava
* @Description: java api 操作例子
* @author zhouzhongqing
* @date 2017年1月10日 下午3:39:48
*
*/ 
public class RedisJava {
	
	/*	List<JedisShardInfo> shards = new ArrayList<JedisShardInfo>();
	JedisShardInfo j = new JedisShardInfo("", 78);
	ShardedJedis shardedJedis = new ShardedJedis(shards );*/
	
	//集群操作
	JedisCluster jedisCluster = null;

	    
	public RedisJava() {
		 // redis节点信息   这里最好写入配置文件
		 Set<HostAndPort> nodes = new HashSet<HostAndPort>();
		 HostAndPort hap1 = new HostAndPort("192.168.16.130", 7000);
		 HostAndPort hap2 = new HostAndPort("192.168.16.130", 7001);
		 HostAndPort hap3 = new HostAndPort("192.168.16.130", 7002);
		 HostAndPort hap4 = new HostAndPort("192.168.16.135", 7003);
		 HostAndPort hap5 = new HostAndPort("192.168.16.135", 7004);
		 HostAndPort hap6 = new HostAndPort("192.168.16.135", 7005);

		 nodes.add(hap1);
		 nodes.add(hap2);
		 nodes.add(hap3);
		 nodes.add(hap4);
		 nodes.add(hap5);
		 nodes.add(hap6);
		 jedisCluster = new JedisCluster(nodes);
	}
	
	
 
	
	/**
	*	<p>函数名称: findByKey</p>
	*	<p>方法描述: 通过key查询</p>
	*	<p>方法调用例子:</p>
	*	<p>完成日期:2017年1月10日</p>
	*	@param @param key
	*	@return void
	*	@throws Exception
	*	@version 1.0
	*/
	private void findByKey(String key) {
		try {//取字符串
			String value = jedisCluster.get(key);
			System.out.println(value);
		} catch (Exception e) {
			try {//取list
				// 取数据,第一个是key,第二个是起始位置,第三个是结束位置,jedis.llen获取长度 -1表示取得所有
				 List<String> values = jedisCluster.lrange(key, 0, -1);
				 System.out.println(values);
			} catch (Exception e2) {
				System.out.println("redis没有这个key");
			}
			
		}
		
		
	}
	
	
	/**
	*	<p>函数名称: findByKey</p>
	*	<p>方法描述: 通过key删除</p>
	*	<p>方法调用例子:</p>
	*	<p>完成日期:2017年1月10日</p>
	*	@param @param key
	*	@return void
	*	@throws Exception
	*	@version 1.0
	*/
	private void deleteByKey(String key) {
		 Long value = jedisCluster.del(key);
		 System.out.println(value);
	}
	
	
	
	
	/**
	*	<p>函数名称: insertObjec</p>
	*	<p>方法描述: 新增</p>
	*	<p>方法调用例子:</p>
	*	<p>完成日期:2017年1月10日</p>
	*	@param @param key
	*	@return void
	*	@throws Exception
	*	@version 1.0
	 * @throws IOException 
	*/
	private void insertObjec() throws IOException {
		Long value = jedisCluster.lpush("testLists", "1","2","3");// k-v存储,v表示的List(队列形式)   //先进先出  
		//或者rpush方法 注意,此处的rpush和lpush是List的操作。是一个双向链表(但从表现来看的
		System.out.println(value);
		if(jedisCluster != null){
			jedisCluster.close();
		}
	}

posted on   愤怒的苹果ext  阅读(22)  评论(0编辑  收藏  举报

编辑推荐:
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
阅读排行:
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· ollama系列01:轻松3步本地部署deepseek,普通电脑可用
· 25岁的心里话
· 按钮权限的设计及实现

导航

< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5
点击右上角即可分享
微信分享提示