redis作为缓存型数据库,越来越受到大家的欢迎,这里简单介绍一下java如何操作redis。
1、java连接redis
java通过需要jedis的jar包获取Jedis连接。
public void getConn() { //获取jedis连接 Jedis jedis = new Jedis("127.0.0.1",6379); //获取redis中以FIELD开头的key Set<String> keys = jedis.keys("FIELD*"); for(String key : keys) { System.out.println(key); } }
2、java获取jedis连接池
如果每次连接redis都new1个Jedis的话,势必耗费很多资源,这里就提到redis连接池。
所需jar包
commons-pool2-2.3.jar
public class RedisUtil { private static JedisPool pool = null; /** * 获取jedis连接池 * */ public static JedisPool getPool() { if(pool == null) { //创建jedis连接池配置 JedisPoolConfig config = new JedisPoolConfig(); //最大连接数 config.setMaxTotal(100); //最大空闲连接 config.setMaxIdle(5); //创建redis连接池 pool = new JedisPool(config,"127.0.0.1",6379,超时时长); } return pool; } /** * 获取jedis连接 * */ public static Jedis getConn() { return getPool().getResource(); } }
新版本jedis的jar包获取连接池,使用完后用jedis.close()归还连接:
@Test public void testPool() { //获取jedis连接 Jedis jedis = RedisUtil.getConn(); String value = jedis.get(key); //使用之后记得关闭连接 jedis.close(); }
老版本的jedis jar获取连接,使用完要用pool.returnResource(jedis);归还连接
public void testPool() { //获取jedis连接 JedisPool pool = RedisUtil.getPool(); Jedis jedis = pool.getResource(); String value = jedis.get(key); //使用之后记得关闭连接 pool.returnResource(jedis); }