Redis的版本2.4.17
jRedis版本alpha.0
用set进行赋值
jredis.set("name", "test");
value = jredis.get("name");get时,报了一个Error response for GET => ERR unknown command "test"
redis数据库monitor显示执行命令是
set name 4
get name
跟踪代码发现 org.jredis.ri.alphazero.protocol.ProtocolBase类中对命令处理public Request createRequest(Command cmd, byte[]... args)函数中
case KEY_VALUE: {
byte[] value = Assert.notNull(args[1], "value arg",
ProviderException.class);
// -------------------
buffer.write(cmd.bytes);
buffer.write(SPACE);
buffer.write(Assert
.notNull(args[0], "key arg", ProviderException.class));
buffer.write(SPACE);
// buffer.write(Convert.toBytes(value.length));
// buffer.write(CRLF);
buffer.write(value);
buffer.write(CRLF);
// -------------------
}设置key_value类型的命令,是cmd+spacce+key+space+value.length+回车+value+回车
这个命令应该是旧redis版本命令
看来JRedis是太久没更新了,还是换Jedis库使用