redis 命令列操作map 和java操作map
阿新 • • 發佈:2018-12-13
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();
}
}