Redis——Java客户端配置

25 篇文章 0 订阅
20 篇文章 0 订阅

概要

由于Redis服务器在官网公开了RESP协议,因此第三方可以通过这个协议来实现和Redis服务器通信的客户端程序,而具体的通信逻辑也不需要我们去实现,只需要导入大佬的库即可

jedis就是封装了RESP协议,提供了一组api供我们使用

导入依赖

创建一个maven项目,然后导入下面这个jedis依赖

<!-- https://mvnrepository.com/artifact/redis.clients/jedis -->
<dependency>
    <groupId>redis.clients</groupId>
    <artifactId>jedis</artifactId>
    <version>4.4.2</version>
</dependency>

映射端口

由于我们需要通过自己电脑的redis客户端,访问服务器的redis服务器,因此需要访问服务器的端口。

而redis的默认端口6379,默认情况下是被云服务器的防火墙保护起来的,外界无法进行访问。这个端口比tomcat的8080端口好入侵的多,我个人之前开启后就被黑客入侵了。。。只能给云服务器重装系统

因此想要解决这个问题,可以直接将Java程序打包成jar包放到云服务器上运行,但是这个过程十分繁琐,如果要修改程序还需要重新打包上传,因此个人推荐下面这个方法

使用ssh进行端口的映射,将服务器的6379端口映射到自己电脑的8888端口,ssh会进行端口的转发,将我们请求的数据包装成应用层数据报,通过22端口发送给服务器,服务器的ssh解析数据报后,就会交给6379端口数据

在这里插入图片描述
以上的端口转发只有ssh连接上才会生效,ssh断开后端口转发就会消失,这极大的保护了我们的服务器不被入侵

编写代码

import redis.clients.jedis.Jedis;
import redis.clients.jedis.JedisPool;

public class RedisDemo {
    public static void main(String[] args) {
        //创建Redis连接池
        JedisPool jedisPool = new JedisPool("tcp://127.0.0.1:8888");

        //从Redis连接池取出连接
        try(Jedis jedis = jedisPool.getResource()){
            String pong = jedis.ping();
            System.out.println(pong);
        }
    }
}

在控制台看到如下信息,说明连接成功
在这里插入图片描述
上述的ip和端口号仅限于开发时这样写,如果项目部署到云服务器上则需要更改为对应的ip和6379端口

如果失败,需要去redis中配置

进入配置文件

 cd /etc/redis/
vim redis.conf

绑定的ip改为0.0.0.0
在这里插入图片描述
关闭保护模式
在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值