String类型在redis中是最简单的类型.从其内部实现可以看做byte数组.它具有的方法如下:
1. set //设置key对应的string类型的value值. (输出:OK 既表示设置成功)
set name hou
2. get //获取key对应的string值, key不存在则返回nil (表示为空)
get name
输出: "hou"
3. setnx //设置key对应的String类型的value值,如果key存在则返回 0 不覆盖value值, 如不存在返回 1;
setnx name hou
输出: 0
get name
输出: "hou" //setnx 没有覆盖该key的value值.
setnx xx name //(xx不存在)
输出: 1
get xx
输出: "name" //设置了该值
4. setex //设置key对应的String类型的value值,并制定其对应的有效期时间. (有效存在时间为10 秒, 10秒内可以get到value值)
setex stylehere 10 here
get stylehere (不超过10秒时)
输出 "here"
5. setrange //设置指定key的value值的子字符串. 常用来替换子字符串,注意按数组下标计算从0开始,没有被替换的字符将继续显示.
get name
输出 "hou"
setrange name 1 f
get name
输出: "hfu"
6. getrange //按下标范围获取指定key的value值的子字符串.
getrange name 1 2
输出 "fu"
7.mset //一次设置多个key的值, ok表示批量设置成功. 返回为0 ,设置失败,没有任何值被设置.
mset key1 good1 key2 good2 key3 good3
get key1
输出: "good1"
8. mget //批量获取key的值,如果对应的key不存在,则返回nil(空)
mget key1 key2 key3
//输出:
1) " good1"
2) "good2"
3) "good3"
9. msetnx //一次设置多个key的值, ok表示成功设置了所有值, 返回0 表示设置失败, 没有任何值被设置.
msetnx key1 xx1 key2 xx2 key3 xx3
输出: 0
10. incr //对key的值做加加操作(执行一次+1),并返回新值,如果incr操作一个不是int的value会返回错误, 如key不存在则设置该key为1;
set age 20
incr age
输出;(integer)21
11. decr //对key的值做减减操作.decr一个不存在的key值则设置该key为 -1
get age
输出: (integer)20
decr age
输出: (integer)19
12.incrby //同incr类似,给该key的值做指定数字的加运算.如果key不存在则会加给该key,并默认原来的value是0
get age
输出: (integer)20
incrby age 5
//输出: (integer)25
13. decrby //同decr类似给该key的值做指定数字的减运算,可以给指定负数,实现incr的效果
get age
输出: (integer)20
decrby age 5
输出: (integer)15
14. append //给指定key的字符串值追加value,返回新的字符串的长度.
get name
//输出: "hou"
append name feng
//输出: (integer)7
get name
//输出: "houfeng"
15. strlen //取key的value的长度
get name
//输出: "houfeng"
strlen name
//输出: (integer)7