字符串是Redis中最基本的数据类型,它能够存储任何类型的字符串,包含二进制数据。可以用于存储邮箱,JSON化的对象,甚至是一张图片,一个字符串允许存储的最大容量为512MB。字符串是其他四种类型的基础,与其他几种类型的区别从本质上来说只是组织字符串的方式不同而已。
Redis字符串的操作命令和对应的api如下:
set [key] [value]
JedisAPI:public String set(final String key, final String value)
功能:设置值
setnx [key] [value]
JedisAPI:public Long setnx(final String key, final String value)
功能:如果key存在,返回0并不生效修改
setex [key] [time] [value]
JedisAPI:public String setex(final String key, final int seconds, final String value)
功能:指定有效期为time秒
setrange [key] n [string]
JedisAPI:public Long setrange(final String key, final long offset, final String value)
功能:将key对应value第n位后面的字符替换成string
mset [key1] [value1] [key2] [value2] ……
JedisAPI:public Long setnx(final String key, final String value)
功能:无
msetnx
JedisAPI:无
功能:类似setnx,设置多个值,,如果key存在,则返回0且修改不生效
get [key]
JedisAPI:public String get(final String key)
功能:获取key对应的值
getset [key] [value]
JedisAPI:public String getSet(final String key, final String value)
功能:设置key的值,并返回key的旧值
getrange [key] n1 n2
JedisAPI:public String getrange(final String key, final long startOffset, final long endOffset)
功能:获取key对应值的索引位置从n1到n2的字符串
mget [key1] [key2] [key3]……
JedisAPI:无
功能:一次获取多个key对应的值,如果不存在,则返回nil
incr [key]
JedisAPI:public Long incr(final String key)
功能:对key的值作加1操作,如果incr一个不存在的值,则对q赋值为1,如果key对应值不是int型则返回错误: -ERR value is not an integer or out of range
incrby [key] [num]
JedisAPI:public Long incrBy(final String key, final long integer)
功能:加指定值 ,key 不存在时候会设置 key,并认为原来的 value 是 0
decr [key]
JedisAPI:public Long decr(final String key)
功能:对key的值做的是减1操作,decr 一个不存在 key,则设置 key 为-1
decrby [key] [num]
JedisAPI:public Long decrBy(final String key, final long integer)
功能: 对key对应的value减去num
append [key] [string]
JedisAPI:public Long append(final String key, final String value)
功能:将string追加到key对应的值尾,返回新字符串的长度
strlen [key]
JedisAPI:public Long strlen(final String key)
功能:读取key对应value的长度