本文主要列举 ValueOperations (字符串键值对)接口的一些常用方法:
/**
* 向指定的键尾部追加一个值
* @param key 指定的键,不能为空
* @param value 要追加的值
* @return 使用 pipeline / transaction 时,返回 null, 否则返回追加后的字符串总长度
*/
@Nullable
Integer append(K key, String value)
/**
* 为键赋值
* @param key 键
* @param value 值
*/
void set(K key, V value)
/**
* 为键赋值并设定过期时间
* 该方法对应 Redis 的 SETEX
* @param key 键
* @param value 值
* @param timeout 有效期时长
* @param unit 时间单位,TimeUnit
*/
void set(K key, V value, long timeout, TimeUnit unit)
/**
* 如果键不存在,则写入键值对,否则不作处理
* 该方法对应 Redis 的 SETNX
* @param key 键,不可为空
* @param value 值
* @return
*/
@Nullable
Boolean setIfAbsent(K key, V value)
/**
* 获取指定键的值
* @param key 键,不可为空
* @return 返回值
*/
@Nullable
V get(Object key)
/**
* 为键设定新值,并返回旧值
* @param key 键,不可为空
* @param value 新值
* @return 返回旧值
*/
@Nullable
V getAndSet(K key, V value)
/**
* 将指定的键对应的值加上一个整数
* @param key 键,不可为空
* @param delta 增量,整数
* @return 返回相加后的和值, 用于pipeline / transaction 则返回 null
*/
@Nullable
Long increment(K key, long delta)
/**
* 将指定的键对应的值加上一个浮点数
* @param key 键,不可为空
* @param delta 增量,浮点数
* @return 返回相加后的和值, 用于pipeline / transaction 则返回 null
*/
@Nullable
Double increment(K key, double delta)
/**
* 批量操作
* 将数组形式的键值对写入Redis
* @param map 键值对数组,不为null
*/
void multiSet(Map<? extends K,? extends V> map)
/**
* 批量操作
* 当且仅当键不存在时,将键值对存入Redis
* 可以参考 Redis 的 MSET
* @param map 键值对数组,不为null
* @return
*/
@Nullable
Boolean multiSetIfAbsent(Map<? extends K,? extends V> map)
/**
* 批量获取值操作
* 获取所有给定的键对应的值,List中值的顺序与键的顺序一一对应
* @param keys 值的集合
* @return 返回与键集合对应的值集合
*/
@Nullable
List<V> multiGet(Collection<K> keys)