RedisTemplate方法 - 直接方法

准备工作

方法1:通过 @Autowired 注入 RedisTemplate (推荐)
@Autowired
private RedisTemplate redisTemplate;
方法2:通过 new RedisTemplated() 方式创建(不推荐)
RedisTemplate redis = new RedisTemplate();

1. 查询是否存在key:.hasKey()

boolean isEmptyKey = redisTemplate.hasKey(key);

2. 设置key的有效时间:.expire(key,time,TimeUnit)

boolean isSuccess = redisTemplate.expire(key, 1, TimeUnit.HOURS);

3. 查询key的过期时间:.getExpire()

long keyDate = redisTemplate.getExpire(key); //负数为没有时间限制,否则单位为秒:3600(2.中设置的一小时)

4. 删除指定(单独)key:.delete()

boolean deleteKey = redisTemplate.delete(key);

5. 批量删除key:.delete()

List<String> keyList = new ArrayList<>();
keyList.add("ss112");
keyList.add("ss113");
keyList.add("ss114");
long delStatus = redisTemplate.delete(keyList); //返回删除成功个数

完整测试案例

    public Object redisDirect(@RequestParam("key") String key) {
        // 判断传入值是否为空,为空时返回全部参数
        Boolean nullStatus = null != key && !key.isEmpty();
        if (nullStatus) {
            Map<String, Object> map = new HashMap<>();

            /* 添加3条数据 */
            redisTemplate.boundValueOps(key).set("user张");
            redisTemplate.boundValueOps("ss113").set("ss113");
            redisTemplate.boundValueOps("ss112").set("臧三");

            // 是否存在这个key
            boolean isEmptyKey = redisTemplate.hasKey(key);
            map.put("isEmptyKey", isEmptyKey);

            if (isEmptyKey) {
                // 设置key的失效时间
                boolean isSuccess = redisTemplate.expire(key, 1, TimeUnit.HOURS);
                map.put("重新设置key过期时间", isSuccess);

                // 获取key的过期时间
                long keyDate = redisTemplate.getExpire(key);
                map.put("key过期时间", keyDate);

                // 删除指定key
                boolean deleteKey = redisTemplate.delete(key);
                map.put("删除指定key" + key, deleteKey);

                // 批量删除key
                List<String> keyList = new ArrayList<>();
                keyList.add("ss112");
                keyList.add("ss113");
                keyList.add("ss114");
                long delStatus = redisTemplate.delete(keyList);
                map.put("批量删除key", delStatus);

                boolean isEmptyKeyArray = redisTemplate.hasKey("ss113");
                map.put("ss113是否存在", isEmptyKeyArray);
            }
            return map;// 正常情况下应返回状态码
        } else {
            return "key不可为空!";// 正常情况下应返回错误码
        }
    }