Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/redis/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
新的Jedis客户端无法在静态Java方法中工作_Java_Redis_Jedis - Fatal编程技术网

新的Jedis客户端无法在静态Java方法中工作

新的Jedis客户端无法在静态Java方法中工作,java,redis,jedis,Java,Redis,Jedis,为什么同一段代码有不同的结果 我正在使用绝地2.1.0与Redis建立连接 方法A: private static Jedis getNewJedis() { return new Jedis(hostname,port); } ..... public static main(String[] args){ getNewJedis().ping(); } public static main(String[] args){ new Jedis(h

为什么同一段代码有不同的结果

我正在使用绝地2.1.0与Redis建立连接

方法A:

private static Jedis getNewJedis() {
        return new Jedis(hostname,port);
    }

.....
public static main(String[] args){
     getNewJedis().ping();
}
public static main(String[] args){
     new Jedis(hostname,port).ping();
}
方法B:

private static Jedis getNewJedis() {
        return new Jedis(hostname,port);
    }

.....
public static main(String[] args){
     getNewJedis().ping();
}
public static main(String[] args){
     new Jedis(hostname,port).ping();
}
我认为不同之处在于方法A被隐藏在静态方法中以便于重用,因此在调用时应该与方法B具有相同的效果

相反,当我使用方法A时,我得到了一个异常。方法B工作得很好

方法A异常

线程“main”中出现异常 redis.clients.jedis.exceptions.JedisConnectionException: java.net.ConnectException:连接被拒绝:连接在 redis.clients.jedis.Connection.connect(Connection.java:134)位于 redis.clients.jedis.BinaryClient.connect(BinaryClient.java:69)位于 redis.clients.jedis.Connection.sendCommand(Connection.java:86)位于 redis.clients.jedis.BinaryClient.ping(BinaryClient.java:82)位于 redis.clients.jedis.jedis.ping(jedis.java:34)在 org.tripodwire.esme.receiver.ReceiverProducer.produceTestJedis(ReceiverProducer.java:168) 位于org.tripodwire.esme.entry.entry.main(entry.java:25)


主机名和端口来自何处?将出现其他错误。我建议查看主机名和端口的值,看看这两个版本之间是否有差异。很可能是您在问题中遗漏了导致问题的代码。@Bringer128-你们都是绝对正确的。显然,每次调用时端口值都不同。我真傻,一开始就没弄明白!