使用Jedis操作Redis(笔记)
2017-06-17 15:11
393 查看
Redis部署在Linux下,远程使用Jedis包操作Redis的尝试
Jedis连接测试:
console:
使用Jedis操作Linux下部署的redis,需要先在Linux下启动redis服务。
Jedis对象中操作redis的方法与Linux下使用redis的命令基本一致。即redis基本命令都有对应的Jedis方法调用。
console:
Jedis事务:
console:
Jedis主从复制:
console:
Jedis连接池
工具类:
JedisPool测试:
console:
Jedis连接测试:
public static void main(String[] args) { Jedis jedis = new Jedis("192.168.0.3",6379); System.out.println(jedis); System.out.println(jedis.ping()); }
console:
redis.clients.jedis.Jedis@3a71f4dd PONG
使用Jedis操作Linux下部署的redis,需要先在Linux下启动redis服务。
Jedis对象中操作redis的方法与Linux下使用redis的命令基本一致。即redis基本命令都有对应的Jedis方法调用。
public static void main(String[] args) { Jedis jedis = new Jedis("192.168.0.3",6379); jedis.set("k1", "v1"); String v1 = jedis.get("k1"); System.out.println(v1); Set<String> set = jedis.keys("*"); System.out.println(set); }
console:
v1 [k1]
Jedis事务:
public static void main(String[] args) { Jedis jedis = new Jedis("192.168.0.3",6379); Transaction tran = jedis.multi(); tran.set("k2", "1"); tran.get("k2"); List<Object> list = tran.exec(); System.out.println(list); }
console:
[OK, 1]
Jedis主从复制:
public static void main(String[] args) { Jedis master = new Jedis("192.168.0.3",6379); Jedis slave = new Jedis("192.168.0.2",6379); slave.slaveof("192.168.0.3", 6379); master.set("k3", "v3"); String value = slave.get("k3"); System.out.println(value); }
console:
v3
Jedis连接池
工具类:
public class JedisPoolUtil { private static volatile JedisPool jedisPool = null; private JedisPoolUtil(){} public static JedisPool getJedisPoolInstance() { if(null == jedisPool) { synchronized (JedisPoolUtil.class){ if(null == jedisPool) { JedisPoolConfig poolConfig = new JedisPoolConfig(); poolConfig.setMaxIdle(32);//最多有多少个空闲的Jedis实例 poolConfig.setMaxTotal(1000);//在低版本Jedis中使用 setMaxActive(),可以分配多少个Jedis实例,-1表示无限制 poolConfig.setMaxWaitMillis(100*1000);//等待100秒,在低版本是setMaxWait(),连接一个Jedis实例的最大等待时间 poolConfig.setTestOnBorrow(true);//获得一个Jedis实例时检测连接可用性,true表示连接均可用 jedisPool = new JedisPool(poolConfig,"192.168.0.3",6379); } } } return jedisPool; } public static void release(JedisPool jedisPool,Jedis jedis) { if(null != jedis) { jedis.close(); } } }
JedisPool测试:
public static void main(String[] args) { JedisPool jedisPool = JedisPoolUtil.getJedisPoolInstance(); Jedis jedis = null; try { jedis = jedisPool.getResource(); jedis.set("k11","v11"); System.out.println(jedis.get("k11")); }catch(Exception e) { e.printStackTrace(); }finally { JedisPoolUtil.release(jedisPool, jedis); } }
console:
v11
相关文章推荐
- Java中使用Jedis操作Redis
- 使用Jedis操作redis
- Java中使用Jedis操作Redis
- Java中使用Jedis操作Redis
- 使用jedis操作redis
- 使用Jedis操作redis
- Java中使用Jedis操作Redis
- Java中使用Jedis操作Redis
- Java中使用Jedis操作Redis
- Java中使用Jedis操作Redis之二
- Java中使用Jedis操作Redis
- Java中使用Jedis操作Redis
- Java中使用Jedis操作Redis
- 使用Jedis连接集群Redis(支持Redis复杂操作)
- java操作redis。jedis使用api
- jedis使用线程池封装redis基本操作
- Java中使用Jedis操作Redis
- Java中使用Jedis操作Redis
- Java中使用Jedis操作Redis
- 如何使用Jedis操作Redis消息队列