Jedis 连接 Redis
- 这个地方我弄了一天才搞定,在网上找了各种解决办法,当时真的有点崩溃
- 通过 Win 上的 idea 连接虚拟机中的 redis 服务:
- 一、配置文件里的几个地方必须修改:
- bind 127.0.0.1 #注释掉这部分,这是限制redis只能本地访问
- protected-mode no #默认yes,开启保护模式,限制为本地访问
- 二、以配置文件形式启动 redis 服务
- 三、虚拟机的防火墙必须关闭或者打开防火墙但开放 6379 端口
- Ubuntu 关闭防火墙:
- Ubuntu 关闭防火墙:
- 四、查看虚拟机的 ip 地址(在代码中要用)
- ifconfig(enp0s3中的inet后面的地址就是)
- ifconfig(enp0s3中的inet后面的地址就是)
- 五、使用 Jar 包连接
<dependency>
<groupId>redis.clients</groupId>
<artifactId>jedis</artifactId>
<version>3.3.0</version>
</dependency>
- 六、编写代码测试连接
public class MyJedis {
public static void main(String[] args) {
Jedis jd = new Jedis("xx.xx.xx.xx",6379);
System.out.println(jd.ping());
System.out.println(jd.set("kk","vv"));
System.out.println(jd.get("kk"));
}
}
- 一切正常的话,就可以使用 Jedis 的 api 操作 redis 了
自己的问题
我就是按照这些步骤一步步来的,但在最后 idea 却爆红:怎么也 connect 不上
在网上找了各种解决办法,弄了一天都没有解决。第二天早上忽然想到可能是虚拟机与主机通讯出了问题,应该不是 redis 服务的问题(毕竟翻来覆去弄了一天都不行),于是在网上查找这类问题,发现自己的虚拟机与主机不能相互 ping,也就证明了自己这个解决思路是对的。在vbox上弄了半天,一知半解地解决了互 ping 的问题,再在idea上运行代码,发现测试成功!!!
大概是这样,虚拟机这块自己真的不太懂: