package com.wodexiangce.util; import java.util.Set; import redis.clients.jedis.Jedis; /** * redis工具类 * @author wangbo * */ public class RedisUtil { private static Jedis jedis; /** * 根据classid获取对应的产品信息 * @param classid * @return */ public static String getRedisValue(String classid){ jedis = JedisPoolUtils.getJedis(); String value = jedis.get(classid); JedisPoolUtils.returnRes(jedis); return value; } /** * 将数据保存到redis * @param key * @param value */ public static void setRedisValue(String key,String value){ jedis = JedisPoolUtils.getJedis(); jedis.set(key, value); JedisPoolUtils.returnRes(jedis); } /** * 获取所有的key * @return */ public static Set<String> getAllKeys(){ jedis = JedisPoolUtils.getJedis(); Set<String> set = jedis.keys("*"); JedisPoolUtils.returnRes(jedis); return set; } /** * 删除指定的key * @param key */ public static void delKey(String key){ jedis = JedisPoolUtils.getJedis(); jedis.del(key); JedisPoolUtils.returnRes(jedis); } /** * 清空redis数据库 */ public static void flushdb(){ jedis = JedisPoolUtils.getJedis(); jedis.flushAll(); //jedis.flushDB(); JedisPoolUtils.returnRes(jedis); } }
package com.wodexiangce.util; import redis.clients.jedis.Jedis; import redis.clients.jedis.JedisPool; import redis.clients.jedis.JedisPoolConfig; /** * redis连接池 * @author wangbo * */ public class JedisPoolUtils { private static JedisPool pool; /** * 建立连接池真实环境,一般把配置参数缺抽取出来。 * */ private static void createJedisPool() { // 建立连接池配置参数 JedisPoolConfig config = new JedisPoolConfig(); // 设置最大连接数 config.setMaxActive(200); // 设置最大阻塞时间,毫秒数 config.setMaxWait(300); // 设置空间连接 config.setMaxIdle(50); config.setMinIdle(10); // 创建连接池 pool = new JedisPool(config, "192.168.111.211", 6379, 30000, "password"); } /** * 在多线程环境同步初始化 */ private static synchronized void poolInit() { if (pool == null) createJedisPool(); } /** * 获取一个jedis 对象 * * @return */ public static Jedis getJedis() { if (pool == null) poolInit(); return pool.getResource(); } /** * 归还一个连接 * * @param jedis */ public static void returnRes(Jedis jedis) { pool.returnResource(jedis); } }