hset key field value 单个设置
hget key field 获取map中指定key的值
HMSET key field value [field value ...] 多个设置
HMGET key field [field ...] 获取map中多个key的值
HGETALL key 获取map中所有的数据
hdel key field [field ...] 删除map中指定key的数据
HINCRBY key field increment 对map中 指定key值进行加法计算
hlen key 获取map的大小
hkeys key 获取map中所有的key值
HVALS key 获取map中所有的value值
HEXISTS key field 判断map中指定key是否存在
一 命令行
1 单个操作
127.0.0.1:6379> hset map1 username zhangsan
(integer) 1
127.0.0.1:6379> hget map1 username
"zhangsan"
127.0.0.1:6379>
2 多个操作
127.0.0.1:6379> hmset map1 password 1234 age 20 sex 1 telphone 123456789
OK
127.0.0.1:6379> hmget map1 password age sex telphone username
1) "1234"
2) "20"
3) "1"
4) "123456789"
5) "zhangsan"
3 获取map中所有的数据
127.0.0.1:6379> HGETALL map1
1) "username"
2) "zhangsan"
3) "password"
4) "1234"
5) "age"
6) "20"
7) "sex"
8) "1"
9) "telphone"
10) "123456789"
127.0.0.1:6379>
4 删除map1中 key为username的值
127.0.0.1:6379> hdel map1 username
(integer) 1
127.0.0.1:6379> hgetall map1
1) "password"
2) "1234"
3) "age"
4) "20"
5) "sex"
6) "1"
7) "telphone"
8) "123456789"
127.0.0.1:6379>
5 对map1中的age进行加法运算
127.0.0.1:6379> HINCRBY map1 age 5
(integer) 25
127.0.0.1:6379> hgetall map1
1) "password"
2) "1234"
3) "age"
4) "25"
5) "sex"
6) "1"
7) "telphone"
8) "123456789"
127.0.0.1:6379> hget map1 age
"25"
6 获取map的大小
127.0.0.1:6379> hlen map1
(integer) 4
127.0.0.1:6379>
7 获取map中所有的key
127.0.0.1:6379> HKEYS map1
1) "password"
2) "age"
3) "sex"
4) "telphone"
127.0.0.1:6379>
8 获取map中所有的value值
127.0.0.1:6379> HVALS map1
1) "1234"
2) "25"
3) "1"
4) "123456789"
127.0.0.1:6379>
9 判断map中 是否存在key为age的数据
127.0.0.1:6379> HEXISTS map1 age
(integer) 1
127.0.0.1:6379> HEXISTS map1 gard
(integer) 0
127.0.0.1:6379>
10 java 通过jedis 操作map
package redisUtils;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.Set;
import org.junit.Test;
import redis.clients.jedis.Jedis;
/**
* 操作map
* @Description: TODO(用一句话描述该文件做什么)
* @author guochao
* @date 2018年10月3日
*
*/
public class RedisMap {
/**
* hset
* hget
* @Description: TODO(用一句话描述该文件做什么)
* @author guochao
* @date 2018年10月3日
*
*/
@Test
public void hsetMap(){ // 单个 操作增加 查询
Jedis jedis = RedisUtils.getJedis();
jedis.hset("maptest", "username","zhangsan" );
String hget = jedis.hget("maptest", "username");
System.out.println(hget);//zhangsan
jedis.close();
RedisUtils.close();
}
/**
* hmset
* hmget
* @Description: TODO(用一句话描述该文件做什么)
* @author guochao
* @date 2018年10月3日
*
*/
@Test
public void msetMap(){
Jedis jedis = RedisUtils.getJedis();
Map<String,String> map = new HashMap<String,String>();
map.put("age","20");
map.put("name","李四");
jedis.hmset("maptest", map);
List<String> mget = jedis.hmget("maptest", "age");
for (String value : mget) {
System.out.println(value);
}
jedis.close();
RedisUtils.close();
}
@Test
public void template(){// 模板
Jedis jedis = RedisUtils.getJedis();
jedis.close();
RedisUtils.close();
}
/**
* hmgetall
* hlen
* @Description: TODO(用一句话描述该文件做什么)
* @author guochao
* @date 2018年10月3日
*
*/
@Test
public void hgetAll(){
Jedis jedis = RedisUtils.getJedis();
Map<String, String> hgetAll = jedis.hgetAll("maptest");
System.out.println(hgetAll);
Long hlen = jedis.hlen("maptest");
System.out.println("map大小"+hlen);
/**
* {name=李四, age=20, username=zhangsan}
map大小3
*/
jedis.close();
RedisUtils.close();
}
@Test
public void hdelKey(){
Jedis jedis = RedisUtils.getJedis();
jedis.hdel("maptest", "name");
Map<String, String> hgetAll = jedis.hgetAll("maptest");
System.out.println(hgetAll);
jedis.close();
RedisUtils.close();
/**
* {age=20, username=zhangsan}
*/
}
/**
* hincrby
* @Description: TODO(用一句话描述该文件做什么)
* @author guochao
* @date 2018年10月3日
*
*/
@Test
public void hincrBy(){
Jedis jedis = RedisUtils.getJedis();
jedis.hincrBy("maptest", "age", 100);
String hget = jedis.hget("maptest", "age");
System.out.println(hget); //120
jedis.close();
RedisUtils.close();
}
/**
* hkeys hvalus
* @Description: TODO(用一句话描述该文件做什么)
* @author guochao
* @date 2018年10月3日
*
*/
@Test
public void hkeysAndHkeyValues(){
Jedis jedis = RedisUtils.getJedis();
Set<String> hkeys = jedis.hkeys("maptest");
System.out.println(hkeys);
List<String> hvals = jedis.hvals("maptest");
System.out.println(hvals);
jedis.close();
/**
* [age, username]
[zhangsan, 120]
*/
RedisUtils.close();
}
@Test
public void hexists(){
Jedis jedis = RedisUtils.getJedis();
Boolean hexists = jedis.hexists("maptest", "age");
System.out.println(hexists);
jedis.close();
RedisUtils.close();
}
}