java遍历读取整个redis数据库实例
redis提供了灵活的数据查询方式,最牛的就是key的搜索支持正则表达式。
jedis.keys(“*”);表示搜索所有key
jedis.keys(“abc*”)表示搜索开头为abc的key数据
遍历了key就能遍历到value。
RedisDO rd = new RedisDO();
rd.open();
Set s = rd.jedis.keys("*");
Iterator it = s.iterator();
while (it.hasNext()) {
String key = (String) it.next();
String value = rd.jedis.get(key);
System.out.println(key + value);
}
rd.close();
package com.javaer.click.way;
import redis.clients.jedis.Jedis;
import redis.clients.jedis.JedisPool;
import redis.clients.jedis.JedisPoolConfig;
import redis.clients.jedis.exceptions.JedisConnectionException;
public class RedisDO {
public Jedis jedis;
public void close(){
jedis.disconnect();
jedis = null;
}
public Jedis open(){
JedisPoolConfig config = new JedisPoolConfig();
config.setMaxActive(100);
config.setMaxIdle(20);
config.setMaxWait(1000l);
JedisPool pool;
pool = new JedisPool(config, "xxxxxxxx.xx.xx.xx", 6379);
boolean borrowOrOprSuccess = true;
try {
jedis = pool.getResource();
// do redis opt by instance
} catch (JedisConnectionException e) {
borrowOrOprSuccess = false;
if (jedis != null)
pool.returnBrokenResource(jedis);
} finally {
if (borrowOrOprSuccess)
pool.returnResource(jedis);
}
jedis = pool.getResource();
return jedis;
}
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
}
}