redis集群javaApi

                <p>pom.xml需要这2个包</p> 

	
	<!-- https://mvnrepository.com/artifact/redis.clients/jedis -->
	<dependency>
	    <groupId>redis.clients</groupId>
	    <artifactId>jedis</artifactId>
	    <version>2.8.0</version>
	</dependency>
 &lt;!-- https://mvnrepository.com/artifact/net.sourceforge.cobertura/cobertura --&gt;
&lt;dependency&gt;
    &lt;groupId&gt;net.sourceforge.cobertura&lt;/groupId&gt;
    &lt;artifactId&gt;cobertura&lt;/artifactId&gt;
    &lt;version&gt;2.0.3&lt;/version&gt;
&lt;/dependency&gt;</code></pre>



代码:

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 {

<span class="hljs-comment">/*	List&lt;JedisShardInfo&gt; shards = new ArrayList&lt;JedisShardInfo&gt;();
JedisShardInfo j = new JedisShardInfo("", 78);
ShardedJedis shardedJedis = new ShardedJedis(shards );*/</span>

<span class="hljs-comment">//集群操作</span>
<span class="hljs-type">JedisCluster</span> <span class="hljs-variable">jedisCluster</span> <span class="hljs-operator">=</span> <span class="hljs-literal">null</span>;

    
<span class="hljs-keyword">public</span> <span class="hljs-title function_">RedisJava</span><span class="hljs-params">()</span> {
	 <span class="hljs-comment">// redis节点信息   这里最好写入配置文件</span>
	 Set&lt;HostAndPort&gt; nodes = <span class="hljs-keyword">new</span> <span class="hljs-title class_">HashSet</span>&lt;HostAndPort&gt;();
	 <span class="hljs-type">HostAndPort</span> <span class="hljs-variable">hap1</span> <span class="hljs-operator">=</span> <span class="hljs-keyword">new</span> <span class="hljs-title class_">HostAndPort</span>(<span class="hljs-string">"192.168.16.130"</span>, <span class="hljs-number">7000</span>);
	 <span class="hljs-type">HostAndPort</span> <span class="hljs-variable">hap2</span> <span class="hljs-operator">=</span> <span class="hljs-keyword">new</span> <span class="hljs-title class_">HostAndPort</span>(<span class="hljs-string">"192.168.16.130"</span>, <span class="hljs-number">7001</span>);
	 <span class="hljs-type">HostAndPort</span> <span class="hljs-variable">hap3</span> <span class="hljs-operator">=</span> <span class="hljs-keyword">new</span> <span class="hljs-title class_">HostAndPort</span>(<span class="hljs-string">"192.168.16.130"</span>, <span class="hljs-number">7002</span>);
	 <span class="hljs-type">HostAndPort</span> <span class="hljs-variable">hap4</span> <span class="hljs-operator">=</span> <span class="hljs-keyword">new</span> <span class="hljs-title class_">HostAndPort</span>(<span class="hljs-string">"192.168.16.135"</span>, <span class="hljs-number">7003</span>);
	 <span class="hljs-type">HostAndPort</span> <span class="hljs-variable">hap5</span> <span class="hljs-operator">=</span> <span class="hljs-keyword">new</span> <span class="hljs-title class_">HostAndPort</span>(<span class="hljs-string">"192.168.16.135"</span>, <span class="hljs-number">7004</span>);
	 <span class="hljs-type">HostAndPort</span> <span class="hljs-variable">hap6</span> <span class="hljs-operator">=</span> <span class="hljs-keyword">new</span> <span class="hljs-title class_">HostAndPort</span>(<span class="hljs-string">"192.168.16.135"</span>, <span class="hljs-number">7005</span>);

	 nodes.add(hap1);
	 nodes.add(hap2);
	 nodes.add(hap3);
	 nodes.add(hap4);
	 nodes.add(hap5);
	 nodes.add(hap6);
	 jedisCluster = <span class="hljs-keyword">new</span> <span class="hljs-title class_">JedisCluster</span>(nodes);
}




<span class="hljs-comment">/**
*	&lt;p&gt;函数名称: findByKey&lt;/p&gt;
*	&lt;p&gt;方法描述: 通过key查询&lt;/p&gt;
*	&lt;p&gt;方法调用例子:&lt;/p&gt;
*	&lt;p&gt;完成日期:2017年1月10日&lt;/p&gt;
*	<span class="hljs-doctag">@param</span> <span class="hljs-doctag">@param</span> key
*	<span class="hljs-doctag">@return</span> void
*	<span class="hljs-doctag">@throws</span> Exception
*	<span class="hljs-doctag">@version</span> 1.0
*/</span>
<span class="hljs-keyword">private</span> <span class="hljs-keyword">void</span> <span class="hljs-title function_">findByKey</span><span class="hljs-params">(String key)</span> {
	<span class="hljs-keyword">try</span> {<span class="hljs-comment">//取字符串</span>
		<span class="hljs-type">String</span> <span class="hljs-variable">value</span> <span class="hljs-operator">=</span> jedisCluster.get(key);
		System.out.println(value);
	} <span class="hljs-keyword">catch</span> (Exception e) {
		<span class="hljs-keyword">try</span> {<span class="hljs-comment">//取list</span>
			<span class="hljs-comment">// 取数据,第一个是key,第二个是起始位置,第三个是结束位置,jedis.llen获取长度 -1表示取得所有</span>
			 List&lt;String&gt; values = jedisCluster.lrange(key, <span class="hljs-number">0</span>, -<span class="hljs-number">1</span>);
			 System.out.println(values);
		} <span class="hljs-keyword">catch</span> (Exception e2) {
			System.out.println(<span class="hljs-string">"redis没有这个key"</span>);
		}
		
	}
	
	
}


<span class="hljs-comment">/**
*	&lt;p&gt;函数名称: findByKey&lt;/p&gt;
*	&lt;p&gt;方法描述: 通过key删除&lt;/p&gt;
*	&lt;p&gt;方法调用例子:&lt;/p&gt;
*	&lt;p&gt;完成日期:2017年1月10日&lt;/p&gt;
*	<span class="hljs-doctag">@param</span> <span class="hljs-doctag">@param</span> key
*	<span class="hljs-doctag">@return</span> void
*	<span class="hljs-doctag">@throws</span> Exception
*	<span class="hljs-doctag">@version</span> 1.0
*/</span>
<span class="hljs-keyword">private</span> <span class="hljs-keyword">void</span> <span class="hljs-title function_">deleteByKey</span><span class="hljs-params">(String key)</span> {
	 <span class="hljs-type">Long</span> <span class="hljs-variable">value</span> <span class="hljs-operator">=</span> jedisCluster.del(key);
	 System.out.println(value);
}




<span class="hljs-comment">/**
*	&lt;p&gt;函数名称: insertObjec&lt;/p&gt;
*	&lt;p&gt;方法描述: 新增&lt;/p&gt;
*	&lt;p&gt;方法调用例子:&lt;/p&gt;
*	&lt;p&gt;完成日期:2017年1月10日&lt;/p&gt;
*	<span class="hljs-doctag">@param</span> <span class="hljs-doctag">@param</span> key
*	<span class="hljs-doctag">@return</span> void
*	<span class="hljs-doctag">@throws</span> Exception
*	<span class="hljs-doctag">@version</span> 1.0
 * <span class="hljs-doctag">@throws</span> IOException 
*/</span>
<span class="hljs-keyword">private</span> <span class="hljs-keyword">void</span> <span class="hljs-title function_">insertObjec</span><span class="hljs-params">()</span> <span class="hljs-keyword">throws</span> IOException {
	<span class="hljs-type">Long</span> <span class="hljs-variable">value</span> <span class="hljs-operator">=</span> jedisCluster.lpush(<span class="hljs-string">"testLists"</span>, <span class="hljs-string">"1"</span>,<span class="hljs-string">"2"</span>,<span class="hljs-string">"3"</span>);<span class="hljs-comment">// k-v存储,v表示的List(队列形式)   //先进先出  </span>
	<span class="hljs-comment">//或者rpush方法 注意,此处的rpush和lpush是List的操作。是一个双向链表(但从表现来看的</span>
	System.out.println(value);
	<span class="hljs-keyword">if</span>(jedisCluster != <span class="hljs-literal">null</span>){
		jedisCluster.close();
	}
}</code></pre>