RedisTemplate之String类型操作

164 阅读1分钟

RedisTemplate之String类型操作

/**
 * @param key
 * @return java.lang.Object
 * @description 缓存获取
 */
public String get(String key) {
    return key == null ? null : ConverterUtils.toString(redisTemplate.opsForValue().get(key));
}

/**
 * @return boolean
 * @param[key, value]
 * @description 缓存存入
 */
public boolean set(String key, Object value) {
    try {
        redisTemplate.opsForValue().set(key, value);
        return true;
    } catch (Exception e) {
        return false;
    }
}

/**
 * @return boolean
 * @param[key, value, time] time要大于0 如果time小于等于0 将设置无限期
 * @description 普通缓存存入并设置时间
 */
public boolean set(String key, Object value, long time) {
    try {
        if (time > 0) {
            redisTemplate.opsForValue().set(key, value, time, TimeUnit.SECONDS);
        } else {
            set(key, value);
        }
        return true;
    } catch (Exception e) {
        return false;
    }
}

/**
 * @return long
 * @param[key, delta] delta:要增加几(必须大于0)
 * @description 递增
 */
public long inc(String key, long delta) {
    if (delta < 0) {
        throw new RuntimeException("递增因子必须大于0");
    }
    return redisTemplate.opsForValue().increment(key, delta);
}

/**
 * @return long
 * @param[key, delta]
 * @description 递减
 */
public long dec(String key, long delta) {
    if (delta < 0) {
        throw new RuntimeException("递增因子必须大于0");
    }
    return redisTemplate.opsForValue().decrement(key, delta);
}