redis--key1
package com.ztest.redis; import java.util.Set; import com.sun.istack.internal.logging.Logger; import com.ztest.redis.util.JedisConnectionUtil; import redis.clients.jedis.Jedis; public class JedisKeyTestOne { private final static Logger logger = Logger.getLogger(JedisKeyTestOne.class); public static void keyTest(){ Jedis jedis = null; try{ jedis = JedisConnectionUtil.initJedis(); // @redis命令: set lvyf 123456 jedis.set("lvyf", "123456"); jedis.set("lvyf1", "123456"); // 1.删除key // @redis命令: exists lvyf logger.info("删除前==" + jedis.exists("lvyf")); // @redis命令: del lvyf lvyf1 Long count = jedis.del("lvyf","lvyf1"); logger.info("删除后==" + jedis.exists("lvyf") + ",删除数量:" + count); // 2.dump 序列化指定key // @redis命令: dump lvyf1 返回序列化后的值;如果key不存在返回:nil // 3.exists 判断key是否存在 // @redis命令: exists lvyf logger.info("是否存在==" + jedis.exists("lvyf")); // 4.expire 设置key的生存时间,使用set重新赋值,key的生存时间不会变 ,过期之后key被删除 // @redis命令:expire key seconds jedis.set("lvyf2", "123"); jedis.expire("lvyf2", 3); logger.info("马上获取=="+jedis.get("lvyf2")); Thread.currentThread(); Thread.sleep(1000 * 4); logger.info("4秒后key是否存在=="+jedis.exists("lvyf2") + ",4秒后获取=="+jedis.get("lvyf2")); // 5.expireat 为key设置失效时间,传入参数unix timestamp 1460098838737,过期之后key被删除 // @redis命令: expireat lvyf3 1460098838737 jedis.expireAt("lvyf3", 1460098838737L); // 6.keys /* * @Redis命令 * KEYS * 匹配数据库中所有 key 。 KEYS h?llo 匹配 hello ,hallo 和 hxllo 等。 KEYS h*llo 匹配 hllo 和 heeeeello 等。 KEYS h[ae]llo 匹配 hello 和 hallo ,但不匹配 hillo */ jedis.set("one", "1"); jedis.set("two" , "2"); jedis.set("three", "3"); jedis.set("four", "4"); Set<String> keysAll = jedis.keys("*"); logger.info("keyAll=="+keysAll); Set<String> keysO = jedis.keys("*o*"); logger.info("keysO=="+keysO); Set<String> keyT = jedis.keys("t*"); logger.info("keyT=="+keyT); Set<String> keyTwo = jedis.keys("tw?"); logger.info("keyTwo" + keyTwo); }catch(Exception e){ e.printStackTrace(); }finally{ if(jedis != null){ JedisConnectionUtil.returnJedis(jedis); //回收 } } } public static void main(String[] args) { keyTest(); } }
未完待续。。。