Redis简单介绍-安装基本类型及其操作命令

news/2024/5/7 15:51:27/文章来源:https://blog.csdn.net/weixin_43024834/article/details/129741972

在这里插入图片描述

文章目录

  • 1. redis网址
  • 2. 安装redis
  • 3. redis10大类型及操作命令
    • 3.1 key操作命令
      • 3.1.1 redis-server重启后数据不会消失
      • 3.1.2 keys * 显示所有的key
      • 3.1.3 exists 判断key是否存在,存在则计数加1
      • 3.1.4 type 显示出类型
      • 3.1.5 del 删除指定key,返回结果为被删除的真实存在的key的个数,不存在则不参与计数
      • 3.1.6 unlink 非阻塞删除key,仅仅将key从keyspace元数据中删除,真正的删除会在后续异步中操作,是为了防止key过大删除时间过长进行阻塞
      • 3.1.7 expire 设置过期时间 秒钟
      • 3.1.8 ttl 查看还有多少秒过期 -1代表永不过期,-2代表已经过期或者key本来就不存在
      • 3.1.9 move key dbindex[0-15] 将key移动到指定库当中
      • 3.1.10 dbsize 查看当前数据库key的数量
      • 3.1.11 flushdb 清空当前库
      • 3.1.12 flushall 清空所有库
      • 3.1.13 命令不区分大小写,key区分大小写
      • 3.1.14 help @类型
    • 3.2 String类型操作命令
      • 3.2.1 string类型最大容量512MB
      • 3.2.2 set key value [nx | xx] nx 代表key不存在才设值,xx代表key已存在才设值
      • 3.2.3 set key value get 设新值时返回旧值
      • 3.2.4 getset key value 同上
      • 3.2.5 set key value ex 10 设置过期时间 时间单位为秒钟
      • 3.2.6 set key value px 10 设置过期时间 时间单位为毫秒
      • 3.2.7 set key value [exat | pxat] 秒时间戳/毫秒时间戳
      • 3.2.8 set key value keepttl 重新设值时保留之前设置的过期时间
      • 3.2.9 mset 批量设值
      • 3.2.10 mget 批量获取值
      • 3.2.11 msetnx 具有原子性,若同时有存在的key和新key,则新key设置会失败
      • 3.2.12 getrange setrange 获取或设置一部分值
      • 3.2.13 incr incrby 给值是数字类型的key递增
      • 3.2.14 decr decrby 给值是数字类型的key递减
      • 3.2.15 setnx key不存在时才设值 set if not exist
      • 3.2.16 setex 设置过期时间 key可以存在也可以不存在 set with expire
    • 3.3 list类型操作命令
      • 3.3.1 底层是双向链表
      • 3.3.2 lpush 从左边插入数据;lrange 取出数据 0 -1 代表所有-
      • 3.3.3 rpush 从右边插入数据
      • 3.3.4 lpop 从左边弹出一个数据;rpop 从右边弹出一个数据
      • 3.3.5 lindex key index 通过索引下标获得元素
      • 3.3.6 llen 获取集合长度
      • 3.3.7 lrem 删除集合中等于某个值的元素若干个
      • 3.3.8 ltrim key 截取出一部分集合的元素
      • 3.3.9 rpoplpush 从源列表的右边取一个值放到目的列表的左边,源列表会减少一个元素,目标列表可以不存在,会增加一个元素,源列表不存在返回nil,适用于消息队列
      • 3.3.10 lset 给集合中的某个元素重新设值
      • 3.3.11 linsert 插入新值,只会插入一个位置
    • 3.4 hash类型操作命令
      • 3.4.1 hset hmset 设值; hget hmget 取值
      • 3.4.2 hgetall
      • 3.4.3 hdel 删除某个属性
      • 3.4.4 hlen 获得属性的数量
      • 3.4.5 hexists key field 判断某个key里面有没有某个属性
      • 3.4.6 hkeys key 罗列key对应的所有属性
      • 3.4.7 hvals key 罗列key对应的所有属性值
      • 3.4.8 hincrby key field
      • 3.4.9 hincrbyfloat
      • 3.4.10 hsetnx stu1 email xinliushijian@163.com 不存在创建成功返回1,存在返回0
    • 3.5 set类型操作命令
      • 3.5.1 sadd set1 1 1 1 2 2 2 3 3 3 新增
      • 3.5.2 smembers set1 查看
      • 3.5.3 sismember set1 4 判断元素是否在集合中,存在返回1,不存在返回0
      • 3.5.4 srem set1 4 删除元素
      • 3.5.5 scard set1 统计有多少元素
      • 3.5.6 srandmember set1 [n] 随机取出n个数字,不改变集合
      • 3.5.7 spop set1 [n] 随机弹出n个元素,弹出的元素会从集合中删除
      • 3.5.8 smove set1 set2 2 将set1中的元素2移动到set2中(剪切)
      • 3.5.9 sdiff set3 set4 属于set3不属于set4的元素构成的集合 差集
      • 3.5.10 sunion set3 set4 并集
      • 3.5.11 sinter set3 set4 交集
      • 3.5.12 sintercard 2 set3 set4 limit1 取两个集合的交集的基数,基数就是个数,limit 表示输出个数的限制
    • 3.6 zset(有序集合 sorted set)类型操作命令
      • 3.6.1 zadd zset1 1 v1 2 v2 4 v4 3 v3
      • 3.6.2 zrange zset1 0 2 withscores 获取元素及score
      • 3.6.3 zrevrange zset1 0 -1 withscores 倒叙获取元素及score
      • 3.6.4 zrangebyscore zset1 (2 6 withscores limit 0 2
      • 3.6.5 zscore zset1 v4 获取元素的分数
      • 3.6.6 zrem zset1 v5 删除元素
      • 3.6.7 zincrby zset1 6 v1 给v1元素的score加6
      • 3.6.8 zcount zset1 2 7 获取指定分数范围内的元素个数
      • 3.6.9 zmpop 1 zset1 min count 2 从一个有序集合中弹出两个score最小的元素
      • 3.6.10 zrank zset2 v2 获取元素的下标
      • 3.6.11 zrevrank zset1 v2 获取元素的倒序下标
      • 3.6.12 场景应用
    • 3.7 bitmap(位图)类型操作命令
      • 3.7.1 定义
      • 3.7.2 setbit bitmap1 1 1 给指定key的值的第offset赋值val,val只能是0或1
      • 3.7.3 getbit key offset 获取key第offset位的值
      • 3.7.4 strlen bitmap1 统计占用了多少字节数
      • 3.7.5 bitcount bitmap1 返回bitmap中值为1的数量
      • 3.7.6 bitop operation destkey key 对不同的二进制存储数据进行位运算(and、or、not、xor)
    • 3.8 HyperLoglog(基数统计)类型操作命令
      • 3.8.1 场景 HyperLoglog 返回的不是具体的元素,而是基数估算值
      • 3.8.2 HyperLoglog定义
      • 3.8.3 基数统计定义 集合去重后的元素个数
      • 3.8.4 pfadd hll1 1 3 4 5 7 9 添加元素到HyperLoglog
      • 3.8.5 pfcount hll1 返回HyperLoglog类型key的基数估算值
      • 3.8.6 pfmerge destkey-hll3 hll1 hll2 将多个HyperLoglog合并为一个
      • 3.8.7 HyperLoglog类型是string
    • 3.9 GEO类型操作命令
      • 3.9.1 geo(geology,地质)简介
      • 3.9.2 GEO的类型是zset
      • 3.9.3 如果显示乱码用此命令启动redis-cli:redis-cli -a 111111 -p 6379 --raw 2>/dev/dull
      • 3.9.4 geoadd 多个精度(longitude)、纬度(latitude)、位置名称(member)添加到指定的key中
      • 3.9.5 geopos xuzhou daxuelu ximatai 返回城市位置的坐标
      • 3.9.6 geohash 返回一个一个或多个位置元素的geohash表示
      • 3.9.7 geodist xuzhou ximatai hubushan km 返回两个给定位置之间的距离
      • 3.9.8 georadius xuzhou 116.418017 39.914402 10 km withdist withcoord count 10 withhash desc 返回给定位置(经纬度)一定半径内的位置
      • 3.9.9 georadiusbymember xuzhou ximatai 10 km withdist withcoord count 10 withhash 返回给定位置(地名)一定半径内的位置
    • 3.10 stream(redis流)类型操作命令
    • 3.11 bitfield(redis位域)类型操作命令

1. redis网址

  1. 中文文档
  2. 官网
  3. 在线测试网址
  4. 命令大全

2. 安装redis

  1. 安装gcc
    由于redis是c语言编写,所以需要安装c语言编译器gcc
yum -y install gcc-c++
  1. 使用xftp将官网下的包传输到linux中
    在这里插入图片描述
  2. 解压安装
tar -zxvf 7.0.10.tar.gz
cd redis-7.0.10/
# 编译安装 
make && make install

安装完成:
在这里插入图片描述
查看安装完成的redis命令

cd /usr/local/bin

在这里插入图片描述

  1. 更改配置文件redis.conf
    复制一份并重命名
mkdir /myredis
cp redis.conf /myredis/redis7.conf
vi /myredis/redis7.conf
set nu# 更改四处设置:
daemonize no # 将no改为yes 运行redis后台启动,309行
protected-mode yes # 将yes改为no,不使用保护模式,当是保护模式时只允许本机访问,111行
bind 127.0.0.1 -::1 # 注释掉这行,bind后跟的是绑定本机的IP地址,(准确的是:本机的网卡对应的IP地址,每一个网卡都有一个IP地址),而不是redis允许来自其他计算机的IP地址。举个例子:如果redis服务器(本机)上有两个网卡,每一个网卡对应一个IP地址,例如IP1和IP2。(注意这个IP1和IP2都是本机的IP地址)。我们的配置文件:bind IP1。 只有我们通过IP1来访问redis服务器,才允许连接Redis服务器,如果我们通过IP2来访问Redis服务器,就会连不上Redis,87行
# requirepass foobared # 取消注释,设置密码requirepass 111111,1036行
  1. 使用新的配置文件启动redis-server
redis-server /myredis/redis7.conf
  1. 查看进程
ps -ef | grep redis | grep -v grep

在这里插入图片描述

  1. 打开客户端
# -a指代授权authenticaton,后面跟密码;-p指代端口,也可以不写,默认6379
redis-cli -a 111111 -p 6379 # 2>/dev/null 重定向标准错误输出,就不会有警告了
ping # 返回pong,代表服务端连接成功,ctrl+c或quit退出客户端,在进程中就查不到redis-cli进程了

在这里插入图片描述

  1. 关闭redis-server
# 1. 在redis-cli中直接shutdown
# 2. 单实例关闭:redis-cli -a 111111 shutdown
# 3. 多实例关闭:可以指定多个端口号关闭 redis-cli -p 6379 shutdown
  1. 卸载
# 关闭redis进程,删除文件
rm -rf /usr/local/bin/redis-* 

3. redis10大类型及操作命令

3.1 key操作命令

3.1.1 redis-server重启后数据不会消失

在这里插入图片描述

3.1.2 keys * 显示所有的key

在这里插入图片描述

3.1.3 exists 判断key是否存在,存在则计数加1

在这里插入图片描述

3.1.4 type 显示出类型

在这里插入图片描述

3.1.5 del 删除指定key,返回结果为被删除的真实存在的key的个数,不存在则不参与计数

在这里插入图片描述

3.1.6 unlink 非阻塞删除key,仅仅将key从keyspace元数据中删除,真正的删除会在后续异步中操作,是为了防止key过大删除时间过长进行阻塞

在这里插入图片描述

3.1.7 expire 设置过期时间 秒钟

在这里插入图片描述

3.1.8 ttl 查看还有多少秒过期 -1代表永不过期,-2代表已经过期或者key本来就不存在

在这里插入图片描述

3.1.9 move key dbindex[0-15] 将key移动到指定库当中

在这里插入图片描述
如果指定库中已经存在相同key,则无法移动
在这里插入图片描述

3.1.10 dbsize 查看当前数据库key的数量

在这里插入图片描述

3.1.11 flushdb 清空当前库

在这里插入图片描述

3.1.12 flushall 清空所有库

在这里插入图片描述

3.1.13 命令不区分大小写,key区分大小写

在这里插入图片描述

3.1.14 help @类型

在这里插入图片描述
在这里插入图片描述

3.2 String类型操作命令

3.2.1 string类型最大容量512MB

3.2.2 set key value [nx | xx] nx 代表key不存在才设值,xx代表key已存在才设值

在这里插入图片描述

3.2.3 set key value get 设新值时返回旧值

在这里插入图片描述

3.2.4 getset key value 同上

在这里插入图片描述

3.2.5 set key value ex 10 设置过期时间 时间单位为秒钟

在这里插入图片描述

3.2.6 set key value px 10 设置过期时间 时间单位为毫秒

在这里插入图片描述

3.2.7 set key value [exat | pxat] 秒时间戳/毫秒时间戳

# 获得秒时间戳代码: 秒时间戳1679640720
System.out.println("秒时间戳" + Long.toString(System.currentTimeMillis()/1000L));

在这里插入图片描述

3.2.8 set key value keepttl 重新设值时保留之前设置的过期时间

在这里插入图片描述

3.2.9 mset 批量设值

在这里插入图片描述

3.2.10 mget 批量获取值

在这里插入图片描述

3.2.11 msetnx 具有原子性,若同时有存在的key和新key,则新key设置会失败

在这里插入图片描述

3.2.12 getrange setrange 获取或设置一部分值

在这里插入图片描述

3.2.13 incr incrby 给值是数字类型的key递增

incr可以应用在点赞数、阅读量等场景,点一下数递增一
在这里插入图片描述

3.2.14 decr decrby 给值是数字类型的key递减

在这里插入图片描述

3.2.15 setnx key不存在时才设值 set if not exist

在这里插入图片描述

3.2.16 setex 设置过期时间 key可以存在也可以不存在 set with expire

在这里插入图片描述

3.3 list类型操作命令

3.3.1 底层是双向链表

3.3.2 lpush 从左边插入数据;lrange 取出数据 0 -1 代表所有-

在这里插入图片描述
应用场景:
博主发表了两篇文章,则lpush article:xinliushijian mysql1 redis1
查看主页显示前10篇文章,lrange artiche:xinliushijian 0 9

3.3.3 rpush 从右边插入数据

在这里插入图片描述

3.3.4 lpop 从左边弹出一个数据;rpop 从右边弹出一个数据

在这里插入图片描述

3.3.5 lindex key index 通过索引下标获得元素

在这里插入图片描述

3.3.6 llen 获取集合长度

在这里插入图片描述

3.3.7 lrem 删除集合中等于某个值的元素若干个

在这里插入图片描述

3.3.8 ltrim key 截取出一部分集合的元素

在这里插入图片描述

3.3.9 rpoplpush 从源列表的右边取一个值放到目的列表的左边,源列表会减少一个元素,目标列表可以不存在,会增加一个元素,源列表不存在返回nil,适用于消息队列

在这里插入图片描述

3.3.10 lset 给集合中的某个元素重新设值

在这里插入图片描述

3.3.11 linsert 插入新值,只会插入一个位置

在这里插入图片描述

3.4 hash类型操作命令

3.4.1 hset hmset 设值; hget hmget 取值

在这里插入图片描述

3.4.2 hgetall

在这里插入图片描述

3.4.3 hdel 删除某个属性

在这里插入图片描述

3.4.4 hlen 获得属性的数量

在这里插入图片描述

3.4.5 hexists key field 判断某个key里面有没有某个属性

在这里插入图片描述

3.4.6 hkeys key 罗列key对应的所有属性

在这里插入图片描述

3.4.7 hvals key 罗列key对应的所有属性值

在这里插入图片描述

3.4.8 hincrby key field

在这里插入图片描述

3.4.9 hincrbyfloat

在这里插入图片描述

3.4.10 hsetnx stu1 email xinliushijian@163.com 不存在创建成功返回1,存在返回0

在这里插入图片描述

3.5 set类型操作命令

3.5.1 sadd set1 1 1 1 2 2 2 3 3 3 新增

在这里插入图片描述

3.5.2 smembers set1 查看

在这里插入图片描述

3.5.3 sismember set1 4 判断元素是否在集合中,存在返回1,不存在返回0

在这里插入图片描述

3.5.4 srem set1 4 删除元素

在这里插入图片描述

3.5.5 scard set1 统计有多少元素

在这里插入图片描述

3.5.6 srandmember set1 [n] 随机取出n个数字,不改变集合

在这里插入图片描述

3.5.7 spop set1 [n] 随机弹出n个元素,弹出的元素会从集合中删除

场景:抽奖
在这里插入图片描述

3.5.8 smove set1 set2 2 将set1中的元素2移动到set2中(剪切)

在这里插入图片描述

3.5.9 sdiff set3 set4 属于set3不属于set4的元素构成的集合 差集

在这里插入图片描述

3.5.10 sunion set3 set4 并集

在这里插入图片描述

3.5.11 sinter set3 set4 交集

场景:共同好友
在这里插入图片描述

3.5.12 sintercard 2 set3 set4 limit1 取两个集合的交集的基数,基数就是个数,limit 表示输出个数的限制

场景:共同好友人数
在这里插入图片描述

3.6 zset(有序集合 sorted set)类型操作命令

3.6.1 zadd zset1 1 v1 2 v2 4 v4 3 v3

zadd key score1 v1 score2 v2 此有序集合会根据score来排序
在这里插入图片描述

3.6.2 zrange zset1 0 2 withscores 获取元素及score

如上图

3.6.3 zrevrange zset1 0 -1 withscores 倒叙获取元素及score

在这里插入图片描述

3.6.4 zrangebyscore zset1 (2 6 withscores limit 0 2

(代表不包含score为2的元素,limit类似mysql的分页
在这里插入图片描述

3.6.5 zscore zset1 v4 获取元素的分数

在这里插入图片描述

3.6.6 zrem zset1 v5 删除元素

在这里插入图片描述

3.6.7 zincrby zset1 6 v1 给v1元素的score加6

在这里插入图片描述

3.6.8 zcount zset1 2 7 获取指定分数范围内的元素个数

在这里插入图片描述

3.6.9 zmpop 1 zset1 min count 2 从一个有序集合中弹出两个score最小的元素

在这里插入图片描述

3.6.10 zrank zset2 v2 获取元素的下标

在这里插入图片描述

3.6.11 zrevrank zset1 v2 获取元素的倒序下标

在这里插入图片描述

3.6.12 场景应用

在这里插入图片描述

3.7 bitmap(位图)类型操作命令

3.7.1 定义

在这里插入图片描述
场景:签到、状态记录

3.7.2 setbit bitmap1 1 1 给指定key的值的第offset赋值val,val只能是0或1

在这里插入图片描述
签到:
setbit sign:user1:202301 1 1 用户user1在1月1号签到了
setbit sign:user1:202301 3 1 用户user1在1月3号签到了
结果:统计出有两天签到了
在这里插入图片描述

3.7.3 getbit key offset 获取key第offset位的值

在这里插入图片描述

3.7.4 strlen bitmap1 统计占用了多少字节数

在这里插入图片描述

3.7.5 bitcount bitmap1 返回bitmap中值为1的数量

在这里插入图片描述

3.7.6 bitop operation destkey key 对不同的二进制存储数据进行位运算(and、or、not、xor)

bitop and bitmap1 20230101 20230102:将20230101 20230102两个key进行位and运算,得到仍为1的位,然后将结果放入目标keybitmap1中,用bitcount bitmap1来计数有多少为1的位。
场景:统计20230101 20230102两天连续签到的人数
在这里插入图片描述

3.8 HyperLoglog(基数统计)类型操作命令

3.8.1 场景 HyperLoglog 返回的不是具体的元素,而是基数估算值

在这里插入图片描述

3.8.2 HyperLoglog定义

在这里插入图片描述

3.8.3 基数统计定义 集合去重后的元素个数

在这里插入图片描述
在这里插入图片描述

3.8.4 pfadd hll1 1 3 4 5 7 9 添加元素到HyperLoglog

在这里插入图片描述

3.8.5 pfcount hll1 返回HyperLoglog类型key的基数估算值

在这里插入图片描述

3.8.6 pfmerge destkey-hll3 hll1 hll2 将多个HyperLoglog合并为一个

在这里插入图片描述

3.8.7 HyperLoglog类型是string

在这里插入图片描述

3.9 GEO类型操作命令

3.9.1 geo(geology,地质)简介

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

3.9.2 GEO的类型是zset

在这里插入图片描述

3.9.3 如果显示乱码用此命令启动redis-cli:redis-cli -a 111111 -p 6379 --raw 2>/dev/dull

在这里插入图片描述

3.9.4 geoadd 多个精度(longitude)、纬度(latitude)、位置名称(member)添加到指定的key中

在这里插入图片描述

3.9.5 geopos xuzhou daxuelu ximatai 返回城市位置的坐标

在这里插入图片描述

3.9.6 geohash 返回一个一个或多个位置元素的geohash表示

在这里插入图片描述
在这里插入图片描述

3.9.7 geodist xuzhou ximatai hubushan km 返回两个给定位置之间的距离

在这里插入图片描述

3.9.8 georadius xuzhou 116.418017 39.914402 10 km withdist withcoord count 10 withhash desc 返回给定位置(经纬度)一定半径内的位置

在这里插入图片描述

3.9.9 georadiusbymember xuzhou ximatai 10 km withdist withcoord count 10 withhash 返回给定位置(地名)一定半径内的位置

在这里插入图片描述

3.10 stream(redis流)类型操作命令

3.11 bitfield(redis位域)类型操作命令

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.luyixian.cn/news_show_275844.aspx

如若内容造成侵权/违法违规/事实不符,请联系dt猫网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

人工智能会给普通人带来哪些改变

最近人工智能太火了,很多人都听说了,尤其是大语言模型。可以让我们像和真人聊天一样,与AI对话,根据你所问的问题,AI可能像一个老师,像一个老人,像一个智者回答你的几乎所有问题。这也把有些人吓…

[openwrt]network配置生成和下发

配置脚本调用 network的配置处理入口为:/etc/init.d/boot,函数调用: /bin/config_generate脚本内容如下:

SpringCloud搭建微服务之Gateway+Jwt实现统一鉴权

1. 概述 在微服务项目中,需要对整个微服务系统进行权限校验,通常有两种方案,其一是每个微服务各自鉴权,其二是在网关统一鉴权,第二种方案只需要一次鉴权就行,避免了每个微服务重复鉴权的麻烦,本…

服务端测试知识汇总

目录 服务端测试思想 经济学⻆度 ⾦字塔模型 技术⻆度 HTTP协议 三次握⼿ HTTP完整请求 通信模式 URI信息 请求⽅法 请求状态码 请求/响应头 常⽤请求数据格式 COOKIE请求流程 SESSION请求流程 TOKEN请求流程 API测试维度 单接⼝测试 多个接⼝测试 …

【tensorboard】深度学习的日志信息events.out.tfevents文件可视化工具

在用深度学习模型训练完模型后,会有一些events.out.tfevents格式的日志信息文件,如下图: 在这类文件需要用tensorboard进行打开,并且查看训练过程的信息内容。 1. tensorboard安装 pip install tensorboard -i https://pypi.do…

从零开始学Python第06课:循环结构

我们在写程序的时候,极有可能遇到需要重复执行某条指令或某些指令的场景,例如我们需要每隔1秒钟在屏幕上输出一次“hello, world”并持续输出一个小时。如下所示的代码可以完成一次这样的操作,如果要持续输出一个小时,我们就需要把…

shell:简单易明白的变量和引用

目录什么是变量shell的变量类型declare定义变量的类型根据数据类型分类根据作用域分类变量的定义shell 中的引用什么是变量 可以变化的量。本质上讲,变量就是在程序中保存用户数据的一块内存空间,而变量名就是这块内存空间的地址。 shell的变量类型 s…

“先人一步”!从华为P60看手机品牌如何找到新趋势、新玩法、新增量

对大多数人来说,换新手机是一件充满新鲜感的事,新机到手让人兴奋,可更让老蔡这样的科技发烧友们兴奋的是“比别人更快拿上新机”。朋友圈里晒图,一群人向他询问使用体验,总能让他获得一种不错的“尝鲜感”。这种现象&a…

【javaweb】SpringBoot初次体验

工具&#xff1a;idea 创建maven文件 导入依赖&#xff0c;在pom.xml中&#xff08;在spring boot的官方文档找&#xff09; <!-- spring工程中需要继承的父工程 --><parent><groupId>org.springframework.boot</groupId><artifactId>spring-b…

F1-F7快恢复二极管 SOD-123 1A 50V~1000V

之前东沃电子&#xff08;DOWOSEMI&#xff09;科普过快恢复二极管ES1A-ES1J&#xff1a;SMA封装、正向平均电流1A、最大反向恢复时间35ns、型号齐全&#xff0c;具体型号有&#xff1a;ES1A、ES1B、ES1C、ES1D、ES1E、ES1G、ES1H、ES1J&#xff0c;所对应的工作峰值反向电压分…

composer详解

一.composer简介什么是ComposerComposer 是 PHP 的一个依赖管理工具&#xff0c;它涉及 "packages" 和 "libraries",简单的说就是我们的项目通常会使用其它代码工具库&#xff0c;这时仅仅是在项目中申明依赖哪些代码工具库&#xff0c;它在每个项目的基础…

基于JavaWeb+jsp实现企业员工工资管理系统

一、项目简介 本项目是一套基于ServletJsp实现的学生成绩管理系统&#xff0c;主要针对计算机相关专业的正在做bishe的学生和需要项目实战练习的Java学习者。 包含&#xff1a;项目源码、数据库脚本等&#xff0c;该项目可以直接作为bishe使用。 项目都经过严格调试&#xff0…

Android开发工程师想找工作需要掌握哪些

前言 目前互联网行业越来越好&#xff0c;进入这个行业的人员也是越来越多。从开发的角度来看&#xff0c;开发的职位主要分前端&#xff0c;后端&#xff0c;客户端&#xff08;主要分为ios和android开发&#xff09;以及算法工程师等。 Android开发一直是当前互联网行业中最…

playwright--pytest-playwright、pytest-base-url插件编写用例

文章目录前言一、安装插件二、编写用例三、运行用例四、内置fixture五、全局配置base_url前言 官方的 pytest-playwright 插件可以编写端到端测试。它提供上下文隔离&#xff0c;开箱即用地在多个浏览器配置上运行。它继承了pytest框架&#xff0c;以及支持playwright的一些基…

【FPGA-DSP】第一期:DSP基础

目录 1. DSP基础 1.1 DSP基本概念 1.2 FPGA实现DSP的特点 2. DSP硬核的结构与使用 3. FPGA设计DSP技术 3.1. 浮点数与定点数的表示与转换 3.1.1. 双精度浮点数表示 3.1.2. 双精度浮点数与定点数的转换 本章作为FPGA数字信号处理的入门介绍课程&#xff0c;将介绍DSP的…

如何在Windows 10中恢复丢失的分区?

一般来说&#xff0c;未分配的空间不能在分区前直接用于存储数据&#xff0c;因此大多数Windows用户会将硬盘划分为不同的分区以存储各种数据。你可以在Windows安装期间或安装完系统后通过硬盘管理、DiskPart命令或第三方工具创建分区。 在分区丢失后&#xff0c;你会…

C的强符号/弱符号

首先上代码和结果&#xff1a; 代码&#xff1a; #include <stdio.h> int k; int k; int main() {printf("addr of k %p\n", &k);printf("value of k %d\n", k);return 0; }结果&#xff1a; addr of k 00408074 value of k 0问题&…

《辉煌优配》消费医疗加速回暖 数字化新竞赛鸣枪

“栽培牙集采将给口腔职业带来深远影响。”瑞尔齿科副总经理胡云帆3月23日承受证券时报记者采访时表明&#xff0c;资料费用下降将惠及公司运营端&#xff0c;同时激活了一大批存量客户。公司相关产品和服务价格已经开端呈现一些变动的迹象。 栽培牙费用包含栽培体费用、牙冠费…

狗都能看懂的VAE笔记

文章目录自编码器普通Auto-Encoder的问题解决的方法如何运作数学细节生成模型Auto-Encoder一直是一个非常有创造性的方向。期中的VAE变分编码器一直是我没搞懂的部分&#xff0c;在AI绘画突然火起来的时候&#xff0c;不得不搞清楚VAE了。看了很多VAE的讲解&#xff0c;没有良好…

The Shebeen——爱尔兰酒吧 NFT 来袭!

从爱尔兰神像到标志性的爱尔兰帽子&#xff0c;The Shebeen——爱尔兰酒吧 NFT 系列是一系列非常吸引的独特数字资产&#xff0c;体现了爱尔兰的精神和风俗。 The Shebeen NFT 系列均来自 The Shebeen——爱尔兰酒吧游戏体验&#xff0c;3 月 17 日至 3 月 29 日可在 The Sandb…