在管道中使用 Jedis `echo`

问题描述 投票:0回答:1

示例使用 Scala 代码,但问题与 Java 相同。

早在 Jedis 版本 2 中,您就可以在管道中使用

echo

import redis.clients.jedis._

object Main {
  def main(args: Array[String]): Unit = {
    val jedis = new Jedis("redis://localhost:6379/0")
    val pipe = jedis.pipelined()
    pipe.echo("Hello, Redis!")
    val response = pipe.syncAndReturnAll()
    println(response.get(0))
  }
}

但是

echo
已从管道中删除。

唯一的替代品似乎是

pipe.sendCommand(Protocol.Command.ECHO, "Hello, Redis!")
,但这会给你一个字节数组,而不是字符串。

是否还有一种简单的方法来使用

echo
,以便它立即返回一个字符串,而我们之后不必进行转换?

scala redis pipeline jedis
1个回答
0
投票

您可以尝试以下方法:

pipe.sendCommand(new CommandObject(new CommandArguments(Protocol.Command.ECHO).add("Hello, Redis!"), BuilderFactory.STRING))

您还可以要求将其添加回来,最好附上对您的用例的解释。

© www.soinside.com 2019 - 2024. All rights reserved.