https://www.cnblogs.com/think-in-java/p/5123884.html 已实现 easy
http://blog.csdn.net/u013256816/article/details/51125842 jedis操作详解!
写一个接口类JedisClient 然后用下面的实现类将具体代码补上。 第二步在spring中配置这个bean
1.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);
}
public long zadd(String key,double score,String member){
long s = jedisCluster.zadd(key, score,member);
return s;
}
/*
* 获取集合中元素的数量
* @param String key
* @return 当 key 存在且是有序集类型时,返回有序集的基数。 当 key 不存在时,返回 0 。
*/
public long zcard(String key){
long count= jedisCluster.zcard(key);
return count;
}
/*
* zcount 获取指定权重区间内的集合数量
*
* @param double min最小排序位置 max最大排序位置
*/
public long zcount(String key,double min,double max){
long count = jedisCluster.zcount(key,min,max);
return count;
}
/*
* zrange 返回有序集合key中,指定区间的成员0,-1指的是整个区间的成员
*/
public Set<String> zrange(String key,int start,int end){
Set<String> set = jedisCluster.zrange(key,0,-1);
return set;
}
/*
* zrevrange 返回有序集 key 中,指定区间内的成员。其中成员的位置按 score 值递减(从大到小)来排列
*/
public Set<String> zrevrange(String key, int start, int end) {
// ShardedJedis sjedis = getShardedJedis();
Set<String> set = jedisCluster.zrevrange(key, start, end);
return set;
}
/*
* zrangeByScore 根据上下权重查询集合
*/
public Set<String> zrangeByScore(String key,double min,double max){
Set<String> set = jedisCluster.zrangeByScore(key, min, max);
return set;
}
/*
* 接上面方法,获取有序集合长度
*/
public long zlength(String key){
long len = 0;
Set<String> set = zrange(key,0,-1);
len = set.size();
return len;
}
/*
* zincrby 为有序集 key 的成员 member 的 score 值加上增量 increment
*
* @return member 成员的新 score 值,以字符串形式表示
*/
public double zincrby(String key,double score,String member){
double s = jedisCluster.zincrby(key, score, member);
return s;
}
/*
* zrank 返回有序集 key 中成员 member 的排名。其中有序集成员按 score 值递增(从小到大)顺序排列
*/
public long zrank(String key,String member){
long index = jedisCluster.zrank(key, member);
return index;
}
/*
*zrevrank 返回有序集 key 中成员 member 的排名。其中有序集成员按 score 值递减(从大到小)排序。
*/
public long zrevrank(String key,String member){
long index = jedisCluster.zrevrank(key, member);
return index;
}
/*
* zrem 移除有序集 key 中的一个或多个成员,不存在的成员将被忽略。当 key 存在但不是有序集类型时,返回一个错误。在 Redis 2.4 版本以前, ZREM 每次只能删除一个元素。
* @return 被成功移除的成员的数量,不包括被忽略的成员
*/
public long zrem(String key,String member){
long count= jedisCluster.zrem(key, member);
return count;
}
/*
*zremrangebyrank 移除有序集 key 中,指定排名(rank)区间内的所有成员。
*@return 被移除成员的数量
*/
public long zremrangeByRank(String key,int start,int end){
long count= jedisCluster.zremrangeByRank(key, start,end);
return count;
}
/*
* zremrangeByScore 删除指定权重区间的元素
*/
public long zremrangeByScore(String key, double min, double max) {
long count = jedisCluster.zremrangeByScore(key, min, max);
return count;
}
/*
* 获取给定值在集合中的权重
*/
}
<bean id="jedisClientCluster" class="com.atao.util.JedisClientCluster">
<property name="jedisCluster" ref="jedisCluster"/>
</bean>
<bean id="jedisCluster" class="redis.clients.jedis.JedisCluster">
<constructor-arg name="nodes">
<set>
<bean class="redis.clients.jedis.HostAndPort">
<constructor-arg name="host" value="192.168.25.129"></constructor-arg>
<constructor-arg name="port" value="7001"></constructor-arg>
</bean>
<bean class="redis.clients.jedis.HostAndPort">
<constructor-arg name="host" value="192.168.25.129"></constructor-arg>
<constructor-arg name="port" value="7002"></constructor-arg>
</bean>
<bean class="redis.clients.jedis.HostAndPort">
<constructor-arg name="host" value="192.168.25.129"></constructor-arg>
<constructor-arg name="port" value="7003"></constructor-arg>
</bean>
<bean class="redis.clients.jedis.HostAndPort">
<constructor-arg name="host" value="192.168.25.129"></constructor-arg>
<constructor-arg name="port" value="7004"></constructor-arg>
</bean>
<bean class="redis.clients.jedis.HostAndPort">
<constructor-arg name="host" value="192.168.25.129"></constructor-arg>
<constructor-arg name="port" value="7005"></constructor-arg>
</bean>
<bean class="redis.clients.jedis.HostAndPort">
<constructor-arg name="host" value="192.168.25.129"></constructor-arg>
<constructor-arg name="port" value="7006"></constructor-arg>
</bean>
</set>
</constructor-arg>
</bean>