Redis中配置生命周期的方法

redis中的TTL  -1表示未设置过期时间,  -2表示不存在  其余的以秒为单位表示剩余过期时间,时间到0之后,自动从缓存清除出去

通过传入的KeyPrefix的expireSeconds表示的过期时间,在通过redisTemplate.expire(realKey, prefix.getExpireSeconds(), TimeUnit.SECONDS);来定义过期时间

/**
     * 写入缓存
     *
     * @param key
     * @param value
     * @return
     */
    public boolean set(KeyPrefix prefix, String key, Object value) {
        boolean result = false;
        try {
            String realKey = prefix.getPrefix() + key;
            ValueOperations<Serializable, Object> operations = redisTemplate
                    .opsForValue();
            operations.set(realKey, value);
            if(prefix.getExpireSeconds() != -1){
                redisTemplate.expire(realKey, prefix.getExpireSeconds(), TimeUnit.SECONDS);
            }
            result = true;
        } catch (Exception e) {
            e.printStackTrace();
        }
        return result;
    }

  

posted @ 2018-07-10 21:02  SkyeAngel  阅读(5878)  评论(0编辑  收藏  举报