如何自建外贸网站,广州网络营销岗位数量,带动画引导的网站,网页设计公司兴田德润在那里目录
一、Hash和String的区别
二、常用命令与演示
三、Redis中Hash类型应用场景 一、Hash和String的区别
这是String,
keyvaluenameTrxcx
这是Hash#xff0c;
keyvaluestudentTrxcxnameTrxcxage21sexmale
可以明显的看出#xff0c;String的value就是一条数据#…
目录
一、Hash和String的区别
二、常用命令与演示
三、Redis中Hash类型应用场景 一、Hash和String的区别
这是String,
keyvaluenameTrxcx
这是Hash
keyvaluestudentTrxcxnameTrxcxage21sexmale
可以明显的看出String的value就是一条数据而Hash的value是由多个“key-value”组成的。
因此很容易发现Hash的value适用于存储对象。 为了明确地区分我们把Hash的value部分的“key”称为fieldvalue部分的“value”称为value。
例如上面的例子中studentTrxcx是keyname是fieldTrxcx是value。 总结
关于String每一条数据value由一个索引key获得
关于Hash每一条数据value由两个索引key和field获得。 二、常用命令与演示 常用命令 格式含义例子hset key field value缓存key下的field-valuehset studentTrxcx name Trxcxhget key field获取key下的field对应的value值 hget studentTrxcx name hexists key field判断key下的field是否存在hexists studentTrxcx namehdel key field删除key下的field字段hdel studentTrxcx agehincrby key field incrementkey下field字段对应value值加上incrementhincrby studentTrxcx age 1 hlen key 获取key下的field字段数量hlen studentTrxcxhkeys key获取key下所有field字段hkeys studentTrxcxhvals key获取key下所有field字段对应的value值hvals studentTrxcxhgetall key获取每一组field-value值hgetall studentTrxcx
127.0.0.1:6379 hset studentTrxcx name Trxcx
(integer) 1
127.0.0.1:6379 hget studentTrxcx name
Trxcx
127.0.0.1:6379 hset studentTrxcx age 21
(integer) 1
127.0.0.1:6379 hget studentTrxcx age
21
127.0.0.1:6379 hget studentTrxcx // 无法直接hget到key下的所有数据
(error) ERR wrong number of arguments for hget command
127.0.0.1:6379 hexists studentTrxcx name // key对应的field存在则返回1否则返回0
(integer) 1
127.0.0.1:6379 hexists studentTrxcx sex
(integer) 0
127.0.0.1:6379 hdel studentTrxcx age
(integer) 1
127.0.0.1:6379 hget studentTrxcx age
(nil)
127.0.0.1:6379 hset studentTrxcx age 21
(integer) 1
127.0.0.1:6379 hincrby studentTrxcx age 1
(integer) 22
127.0.0.1:6379 hget studentTrxcx age
22
127.0.0.1:6379 hlen studentTrxcx
(integer) 2
127.0.0.1:6379 hkeys studentTrxcx
1) name
2) age
127.0.0.1:6379 hvals studentTrxcx
1) Trxcx
2) 22
127.0.0.1:6379 hgetall studentTrxcx
1) name
2) Trxcx
3) age
4) 22 三、Redis中Hash类型应用场景
共享session和使用string的区别是
如果把user对象转换为json字符串存redis此时使用string类型来实现共享session方便查找但不利于修改要改动某个字段需要获取整个对象【实际中常用】
如果把user对象转换为hash对象存redis此时使用hash类型来实现共享session方便修改但不利于查找查找的时候获取到的是map要再次转换为对象