redispool java

  • Redis安装

去Redis官网http://redis.io/下载最新的安装包。下面以linux下的安装为例:

上传redis-2.4.17.tar.gz 到服务器 (自选目录,如/home/usr)
解压缩redis-2.4.17.tar.gz  (tar –zxvf redis-2.4.17.tar.gz) 得到 redis-2.4.17目录

进入目录redis-2.4.17文件夹 (cd redis-2.4.17)
编译安装 (make && make install)
检查安装是否成功(成功后redis-2.4.17/src目录中会生成redis-server、redis-cli两个文件)

启动redis (执行redis-2.4.17/src目录下的redis-server文件如:./redis-server &)
打开redis客户端测试redis是否工作正常 (执行redis-2.4.17/src目录下的redis-cli文件:./redis-cli)

 

  • Java操作Redis客户端Jedis

Jedis简单使用

Jedis jedis = new Jedis("10.11.20.140");  
String keys = "name";  		  
// 删数据  
jedis.del(keys);  
// 存数据  
jedis.set(keys, "zhangsan");  
// 取数据  
String value = jedis.get(keys);  
System.out.println(value); 

 

使用Jedis池。池化实现Jedis使访问redis的效率更高。

初始化池

JedisPoolConfig config = new JedisPoolConfig();
config.setMaxActive(maxAcive);
config.setMaxIdle(maxIdle);
config.setMaxWait(maxWait);
config.setTestOnBorrow(testOnBorrow);
config.setTestWhileIdle(testWhileIdle);
config.setMinEvictableIdleTimeMillis(minEvictableIdleTime);
config.setTimeBetweenEvictionRunsMillis(timeBetweenEvictionRuns);
config.setNumTestsPerEvictionRun(numTestsPerEvictionRun);
pool = new JedisPool(config, redisIp, port);

 从池中取jedis对象

Jedis jedis = pool.getResource();

 释放jedis对象回到池

pool.returnResource(jedis);

 

 

  • Jedis主要API

连接相关API

//默认使用0号数据库,这里可以选择
jedis.select(1);
//清空当前数据库
jedis.flushDB();
//清空所有数据库
jedis.flushAll();

 key相关API

String key = "zhang";
//key的有效期3s
jedis.expire(key, 3);
//重命名key
jedis.rename("zhang", "zhang1");
//是否存在key,返回boolean
jedis.exists(key);
//遍历key
Set<String> keys = jedis.keys("*");

 String相关API

//设置key-value
jedis.set("ye", "liang");
//根据key获得value
System.out.println(jedis.get("ye"));
//删除key
jedis.del("ye");

 Map相关API

//将map存入redis
jedis.hset("student:1", "NUM", "1");
jedis.hset("student:1", "NAME", "zhangsan");
jedis.hset("student:2", "NUM", "2");
jedis.hset("student:2", "NAME", "lisi");
//删除某个map
jedis.hdel("student:1", "NUM");
//获取map
System.out.println(jedis.hget("student:1", "NAME"));
//遍历map
Set<String> fields = jedis.hkeys("student:2");
for(String field : fields){
    System.out.println(field+":"+jedis.hget("student:2", field));
}

List相关API

//添加数据  
jedis.lpush("lists", "aa");  
jedis.lpush("lists", "bb");  
jedis.lpush("lists", "cc");  
//list长度
System.out.println(jedis.llen("lists"));
//获得第一至第三个元素
System.out.println(jedis.lrange("lists", 0, 2));  
//修改第一个元素
jedis.lset("lists", 0, "dd");  
//获取第一个元素 
System.out.println(jedis.lindex("lists", 0));  
//删除从表头开始value为bb的一个元素
System.out.println(jedis.lrem("lists", 1, "bb"));  
//删除区间以外的数据  
System.out.println(jedis.ltrim("lists", 0, 1));

 Set相关API

//添加数据  
jedis.sadd("sets", "aa");  
jedis.sadd("sets", "bb");  
jedis.sadd("sets", "cc");  
//判断value是否在列表中  
System.out.println(jedis.sismember("sets", "bb"));  
//整个列表值  
System.out.println(jedis.smembers("sets"));  
//删除指定元素  
System.out.println(jedis.srem("sets", "bb"));

SortedSet相关API 

//添加数据  
jedis.zadd("zset", 11, "aa");  
jedis.zadd("zset", 12, "bb");  
jedis.zadd("zset", 13, "cc");  
jedis.zadd("zset", 14, "dd");  
//元素个数  
System.out.println(jedis.zcard("zset"));  
//元素下标  
System.out.println(jedis.zscore("zset", "cc"));  
//整个集合值  
System.out.println(jedis.zrange("zset", 0, -1));  
//删除元素  
System.out.println(jedis.zrem("zset", "cc"));
//score范围内的元素个数
System.out.println(jedis.zcount("zset", 11, 14));
 
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值