Jedis使用
新建工程,引入依赖
<dependencies>
<dependency>
<groupId>redis.clients</groupId>
<artifactId>jedis</artifactId>
<version>2.9.0</version>
</dependency>
</dependencies>
测试类
package com.atguigu.jedis;
import redis.clients.jedis.Jedis;
public class JedisDemo1 {
public static void main(String[] args) {
// 创建Jedis对象
Jedis jedis = new Jedis("192.168.19.128", 6379);
// 测试
String ping = jedis.ping();
System.out.println(ping);
}
}
运行结果:
Exception in thread "main" redis.clients.jedis.exceptions.JedisConnectionException: java.net.SocketTimeoutException: connect timed out
at redis.clients.jedis.Connection.connect(Connection.java:207)
at redis.clients.jedis.BinaryClient.connect(BinaryClient.java:93)
at redis.clients.jedis.Connection.sendCommand(Connection.java:126)
at redis.clients.jedis.Connection.sendCommand(Connection.java:121)
at redis.clients.jedis.BinaryClient.ping(BinaryClient.java:106)
at redis.clients.jedis.BinaryJedis.ping(BinaryJedis.java:195)
at com.atguigu.jedis.JedisDemo1.main(JedisDemo1.java:11)
Caused by: java.net.SocketTimeoutException: connect timed out
at java.net.DualStackPlainSocketImpl.waitForConnect(Native Method)
at java.net.DualStackPlainSocketImpl.socketConnect(DualStackPlainSocketImpl.java:81)
at java.net.AbstractPlainSocketImpl.doConnect(AbstractPlainSocketImpl.java:476)
at java.net.AbstractPlainSocketImpl.connectToAddress(AbstractPlainSocketImpl.java:218)
at java.net.AbstractPlainSocketImpl.connect(AbstractPlainSocketImpl.java:200)
at java.net.PlainSocketImpl.connect(PlainSocketImpl.java:162)
at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:394)
at java.net.Socket.connect(Socket.java:606)
at redis.clients.jedis.Connection.connect(Connection.java:184)
... 6 more
Process finished with exit code 1
连接超时
检查配置文件:
# bind 127.0.0.1 -::1
单机访问已注释
protected-mode no
保护模式已关闭
关闭防火墙
systemctl status firewalld.service
systemctl stop firewalld.service
暴露6379端口
firewall-cmd --permanent --add-port=6379/tcp
firewall-cmd --reload
重启redis
redis-cli shutdown
再次运行
PONG
Process finished with exit code 0