redis集成到spring boot中使用

(一)添加依赖

    redis服务器在官网中公开了自己使用的协议--RESP,所以我们可以使用这个协议来访问redis服务器,但是如果我们要自己实现库,那肯定是非常麻烦的,所以我们可以使用网上的库,我们直接调用接口,不需要关注redis协议的细节,我们这里使用的是jedis

<dependency>
			<groupId>redis.clients</groupId>
			<artifactId>jedis</artifactId>
			<version>4.3.2</version>
		</dependency>

  只需要在pom文件中添加这个依赖

    但是还有一个问题需要注意,我个人的redis是在windows环境上的所以不涉及到这个问题,如果我们不是windows上的redis服务器,那我们自己的windows电脑就无法直接通过本机ip来直接访问redis服务器了

    所以我们就需要通过云服务器的外网ip来访问linux服务器

  但是这样还远远不够,因为我们云服务器的默认端口6379是被防火墙给隔离起来的,我们是不可以直接访问到的,这也是为了保证我们的信息安全,因为要保证信息安全,所以我们也不可以把防火墙关闭

  那我们不可以关闭防火墙开放redis关口,又想自己访问,这不是既要又要吗,这能行?

 那这里有两种方法可以帮我们实现这个既要又要的需求:

1.你可以跟我一样,把redis服务器也运行在本机上,这样我们就可以使用本机ip直接访问

2.配置ssh端口转发,把云服务器的redis端口,映射到本地主机上(其实思想上还是把redis服务器运行在同一环境)

   我们这里简单说一下ssh的端口转发功能,简单来说就是通过ssh的一个端口,来传递其他端口的数据

  本身我们这里是需要通过windows主机,来访问云服务器的6379端口的,于是我们就构造一个特殊的ssh数据包,把要访问6379端口的请求,放到数据报里,此时我们的数据报就变成了这样

  然后这个数据报就会通过ssh端口发给服务器,服务器中也有ssh服务器程序,他通过解析我们发送的数据包,然后把数据报就交给了6379端口

  而同时一个服务器上,ssh可能需要给多个端口传递数据,这时候我们为了区分不同端口,就会把服务器的端口在本地用另一个端口来表示(只需要我们配置一下)

然后进行连接,端口转发就生效了

 此时如果还不能在windows上执行,就可能使我们最开始安装redis服务器时,我们的一些设置有问题,比如要配置绑定的ip这里默认是127.0.0.1,只能本机访问,不可以跨主机,要进行更改,也可能是我们开启了保护模式默认是yes,如果开启了也不可以跨主机访问

 此时就可以正确的在windows下使用redis了

(二)通过jedis进行redis的一些通用命令

  我们在这里只会介绍一些有代表性的命令,因为这些命令和我们在redis客户端中讲的使用方法是一样的。

1)通用命令

  1.set/get

  设置和获取数据

  首先我们的启动类长这个样子

这样我们就建立好连接了

2.exist/del

判断数据是否存在和删除数据

3.keys

查询key对应的value(注意这里的返回值为set类型)

4.expire/ttl

设置过期时间和查询过期时间(单位为s)

5.type

获取key对应的value

2)字符串操作

1.mget/mset

设置或者获取字符串

2.append

在指定的key对应的value加上字符串

3.getrange/setrange

 获取指定区间字符串和设置指定区间字符串(都是闭区间)

4.setnx

如果key没有value的时候才可以被成功设置

5.psetex/pttl

对value是字符串类型的key设置过期时间和查询过期时间

6.incr/decr

7.incrby/decrby

3)列表操作

1.lpush/lpop

2.rpush/rpop

3.lrange

4.brpop/blpop

返回值list是一个二元组[0]为key[1]为value,超时时间设为0表示死等

5.lindex

6.lset

4)哈希表操作

1.hset/hget

2.hexists/hdel

3.hkeys/hvals

4.hincrby/hincrbyfloat

5)集合操作

1.sadd/smembers

2.srem/sismember

3.scard

4.sinter/sinterstore

6)有序集合

1.zadd/zrange

2.zrem/zcard

3.zcount

4.zpopmax/zpopmin

   我们注意这里面有一个新的类tuple,是我们jedis中的一个新类,本质上是个二元组,在这里,里面存储的是member和score

5.zscore/zincrby

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值