6、Redis中对Hash类型的操作命令
1、对Hash类型的操作命令
1.1、hset:设置值。格式是:hset hash的key 项的key 项的值
操作如下:

java示例代码:
import redis.clients.jedis.Jedis; /**
* redis中对于hash类型的: hset 操作示例
* hset:设置值。格式是:hset hash的key 项的key 项的值
*/
public class Hash_hset_operation {
public static void main(String[] args) {
Jedis jedis = new Jedis("127.0.0.1",6379);
/**
* 示例1: hset hash的key 项的key 项的值
*/
jedis.hset("myhash","id","3");
jedis.hset("myhash","name","xiaohong");
jedis.hset("myhash","age","13");
}
}
1.2、hmset:同时设置多对值。格式是:hmset hash的key 项的key 项的值。(项的key和项的值可以多对)
操作如下:

java示例代码:
import redis.clients.jedis.Jedis; import java.util.HashMap;
import java.util.Map; /**
* redis中对于hash类型的: hmset 操作示例
* hmset:同时设置多对值。格式是:hmset hash的key 项的key 项的值。(项的key和项的值可以多对)
*/
public class Hash_hmset_operation {
public static void main(String[] args) {
Jedis jedis = new Jedis("127.0.0.1",6379);
/**
* 示例1: hmset hash的key 项的key 项的值。(项的key和项的值可以多对)
*/
Map<String,String> map = new HashMap<>();
map.put("id","1");
map.put("name","dongdong");
map.put("age","3");
jedis.hmset("myhash",map);
}
}
1.3、hget:获取值。格式是:hget hash的key 项的key
操作如下:

java示例代码:
import redis.clients.jedis.Jedis; /**
* redis中对于hash类型的: hget 操作示例
* hget:获取值。格式是:hget hash的key 项的key
*/
public class Hash_hget_operation {
public static void main(String[] args) {
Jedis jedis = new Jedis("127.0.0.1",6379);
/**
* 示例1: hget hash的key 项的key
*/
String id = jedis.hget("myhash", "id");
String name = jedis.hget("myhash", "name");
String age = jedis.hget("myhash", "age"); System.out.println(String.format("id = %s, name = %s, age = %s",id,name,age));
}
}
1.4、hmget:同时获取多对值。格式是:hmget hash的key 项的key。(项的key可以有多个)
操作如下:

java示例代码:
import redis.clients.jedis.Jedis; import java.util.List; /**
* redis中对于hash类型的: hmget 操作示例
* hmget:同时获取多对值。格式是:hmget hash的key 项的key。(项的key可以有多个)
*/
public class Hash_hmget_operation {
public static void main(String[] args) {
Jedis jedis = new Jedis("127.0.0.1",6379);
/**
* 示例1: hmget hash的key 项的key。(项的key可以有多个)
*/
List<String> hmget = jedis.hmget("myhash", "id", "name", "age");
System.out.println("hmget = " + hmget);
}
}
1.5、hgetall:获取该key下所有的值。格式是:hgetall hash的key
操作如下:

java示例代码:
import redis.clients.jedis.Jedis; import java.util.Map; /**
* redis中对于hash类型的: hgetall 操作示例
* hgetall:获取该key下所有的值。格式是:hgetall hash的key
*/
public class Hash_hgetall_operation {
public static void main(String[] args) {
Jedis jedis = new Jedis("127.0.0.1",6379);
/**
* 示例1: hgetall hash的key
*/
Map<String, String> myhash = jedis.hgetAll("myhash");
System.out.println("myhash = " + myhash);
}
}
1.6、hdel:删除某个项。格式是:hdel hash的key 项的key
操作如下:

java示例代码:
import redis.clients.jedis.Jedis; import java.util.Map; /**
* redis中对于hash类型的: hdel 操作示例
* hdel:删除某个项。格式是:hdel hash的key 项的key
*/
public class Hash_hdel_operation {
public static void main(String[] args) {
Jedis jedis = new Jedis("127.0.0.1",6379); Map<String, String> myhash = jedis.hgetAll("myhash");
System.out.println("myhash = " + myhash);
/**
* 示例1: hdel hash的key 项的key
*/
Long hdel = jedis.hdel("myhash", "age");
System.out.println("hdel = " + hdel); Map<String, String> myhash1 = jedis.hgetAll("myhash");
System.out.println("myhash1 = " + myhash1);
}
}
1.7、hlen:获取key里面的键值对数量。格式是:hlen hash的key
操作如下:

java示例代码:
import redis.clients.jedis.Jedis; import java.util.Map; /**
* redis中对于hash类型的: hlen 操作示例
* hlen:获取key里面的键值对数量。格式是:hlen hash的key
*/
public class Hash_hlen_operation { public static void main(String[] args) {
Jedis jedis = new Jedis("127.0.0.1",6379); Map<String, String> myhash = jedis.hgetAll("myhash");
System.out.println("myhash = " + myhash);
/**
* 示例1: hlen hash的key
*/
Long hlen = jedis.hlen("myhash");
System.out.println("hlen = " + hlen);
}
}
1.8、hexists:判断键值是否存在。格式是:hexists hash的key 项的key
操作如下:

java示例代码:
import redis.clients.jedis.Jedis; import java.util.Map; /**
* redis中对于hash类型的: hexists 操作示例
* hexists:判断键值是否存在。格式是:hexists hash的key 项的key
*/
public class Hash_hexists_operation {
public static void main(String[] args) {
Jedis jedis = new Jedis("127.0.0.1",6379); Map<String, String> myhash = jedis.hgetAll("myhash");
System.out.println("myhash = " + myhash);
/**
* 示例1: hexists hash的key 项的key
*/
Boolean hexists = jedis.hexists("myhash", "id");
System.out.println("hexists = " + hexists);
}
}
1.9、hkeys:获取所有的item的key,格式是:hkeys hash的key
操作如下:

java示例代码:
import redis.clients.jedis.Jedis; import java.util.Map;
import java.util.Set; /**
* redis中对于hash类型的: hexists 操作示例
* hkeys:获取所有的item的key,格式是:hkeys hash的key
*/
public class Hash_hkeys_operation {
public static void main(String[] args) {
Jedis jedis = new Jedis("127.0.0.1",6379); Map<String, String> myhash = jedis.hgetAll("myhash");
System.out.println("myhash = " + myhash);
/**
* 示例1: hkeys hash的key
*/
Set<String> hkeys = jedis.hkeys("myhash");
System.out.println("hkeys = " + hkeys);
}
}
1.10、hvals:获取所有的item的值,格式是:hvals hash的key
操作如下:

java示例代码:
import redis.clients.jedis.Jedis; import java.util.List;
import java.util.Map; /**
* redis中对于hash类型的: hexists 操作示例
* hvals:获取所有的item的值,格式是:hvals hash的key
*/
public class Hash_hvals_operation {
public static void main(String[] args) {
Jedis jedis = new Jedis("127.0.0.1",6379); Map<String, String> myhash = jedis.hgetAll("myhash");
System.out.println("myhash = " + myhash);
/**
* 示例1: hvals hash的key
*/
List<String> hvals = jedis.hvals("myhash");
System.out.println("hvals = " + hvals);
}
}
1.11、hincrby : 增减整数数字,格式是:hincrby Hash的key 项的key 正负整数
操作如下:

java示例代码:
import redis.clients.jedis.Jedis; import java.util.Map; /**
* redis中对于hash类型的: hexists 操作示例
* hincrby : 增减整数数字,格式是:hincrby Hash的key 项的key 正负整数
*/
public class Hash_hincrby_operation {
public static void main(String[] args) {
Jedis jedis = new Jedis("127.0.0.1",6379); Map<String, String> myhash = jedis.hgetAll("myhash");
System.out.println("myhash = " + myhash);
/**
* 示例1: hincrby Hash的key 项的key 正负整数
*/
Long hincrBy = jedis.hincrBy("myhash", "id", 4);
System.out.println("hincrBy = " + hincrBy); Map<String, String> myhash2 = jedis.hgetAll("myhash");
System.out.println("myhash2 = " + myhash2);
}
}
1.12、hincrbyfloat :增减float数值,格式是:hincrbyfloat Hash的key 项的key 正负float
操作如下:

1.13、hsetnx : 如果项不存在则赋值,存在时什么都不做,格式是:hsetnx Hash的key 项的key 项的值
操作如下:

java示例代码:
import redis.clients.jedis.Jedis; import java.util.Map; /**
* redis中对于hash类型的: hexists 操作示例
* hsetnx : 如果项不存在则赋值,存在时什么都不做,格式是:hsetnx Hash的key 项的key 项的值
*/
public class Hash_hsetnx_operation { public static void main(String[] args) {
Jedis jedis = new Jedis("127.0.0.1",6379); Map<String, String> myhash = jedis.hgetAll("myhash");
System.out.println("myhash = " + myhash);
/**
* 示例1: hsetnx Hash的key 项的key 项的值
*/
jedis.hsetnx("myhash","id","123");
jedis.hsetnx("myhash","address","chengdou"); Map<String, String> myhash2 = jedis.hgetAll("myhash");
System.out.println("myhash2 = " + myhash2);
}
}
6、Redis中对Hash类型的操作命令的更多相关文章
- 5、Redis中对Set类型的操作命令
写在前面的话:读书破万卷,编码如有神 -------------------------------------------------------------------- ------------ ...
- 4、Redis中对List类型的操作命令
写在前面的话:读书破万卷,编码如有神 -------------------------------------------------------------------- ------------ ...
- 7、Redis中对ZSet类型的操作命令
写在前面的话:读书破万卷,编码如有神 -------------------------------------------------------------------- ---------- ...
- 3、Redis中对String类型的操作命令
写在前面的话:读书破万卷,编码如有神 -------------------------------------------------------------------- ------------ ...
- redis hash 类型的操作命令
redis 文档: https://redis.readthedocs.io/en/2.4/index.html keys * type key --------------------------- ...
- Python(Redis 中 Set/Zset 类型数据和其他操作)
1.redis 基本操作命令 Set 操作 Set 集合就是不允许重复的列表 无序集合 sadd(name,values) 给 name 对应的集合中添加 1 个或多个元素 import redis ...
- Redis中关于Hash键的一些问题
Hash键存在的意义: 1.Hash键可以将信息凝聚在一起,而不是直接分散的存储在整个Redis中,这不仅方便了数据管理,还可以尽量避免一定的误操作: 2.避免键名冲突: 3.减少内存占用.(最重要的 ...
- Redis中一个String类型引发的惨案
曾经看到这么一个案例,有一个团队需要开发一个图片存储系统,要求这个系统能快速记录图片ID和图片存储对象ID,同时还需要能够根据图片的ID快速找到图片存储对象ID.我们假设用10位数来表示 ...
- Perl中的hash类型
hash类型 hash类型也称为字典.关联数组.映射(map)等等,其实它们都是同一种东西:键值对.每一个Key对应一个Value. hash会将key/value散列后,按序放进hash桶.散列后的 ...
随机推荐
- 网络_OSI模型_数据包传输
2017年1月12日, 星期四 网络_OSI模型_数据包传输 1. 网络_源主机_局域网_交换机_路由器_目标主机 2. OSI7七层_TCP/IP精简 OSI 7层: 应用层 ...
- [转]Android ANR 分析解决方法
一:什么是ANR ANR:Application Not Responding,即应用无响应 二:ANR的类型 ANR一般有三种类型: 1. KeyDispatchTimeout(5 seconds) ...
- php银行卡校验
前言银行金卡,维萨和万事达.银联品牌,如果是贷记卡或准贷记卡,一定为16位卡号.而借记卡可以16-19位不等.美国运通卡则不论金卡或是白金卡.普通卡,都是15位卡号.16-19 位卡号校验位采用 Lu ...
- Floyd判圈算法 UVA 11549 - Calculator Conundrum
题意:给定一个数k,每次计算k的平方,然后截取最高的n位,然后不断重复这两个步骤,问这样可以得到的最大的数是多少? Floyd判圈算法:这个算法用在循环问题中,例如这个题目中,在不断重复中,一定有一个 ...
- git 修改已提交的注释
在git中,其commit提供了一个--amend参数,可以修改最后一次提交的信息 修改最后一次提交注释 git commit --amend 然后在出来的编辑界面,直接编辑注释的信息,保存退出 gi ...
- cmd命令,bat脚本
1.cd /d D:\>cd mysql D:\mysql>cd /d C:/TEMP C:\Temp>cd /? 显示当前目录名或改变当前目录. CHDIR [/D] [drive ...
- 【干货】SIFT-Workstation 下载与安装 不跳过每一个细节部分
SIFT-Workstation.ova 下载地址https://digital-forensics.sans.org/community/download-sift-kit ov ...
- Longest Words
Given a dictionary, find all of the longest words in the dictionary. Example Given { "dog" ...
- linux终端自定义设置
2014年1月4日 19:21:16 1. ls命令显示文件列表时不再花花绿绿 vi ~/.bashrc alias ls='ls -a --color=never' alias ll='ls -lh ...
- 10 Go 1.10 Release Notes
Go 1.10 Release Notes Introduction to Go 1.10 Changes to the language Ports Tools Default GOROOT &am ...