jedis java代码中的redis异常

时间:2015-03-12 11:59:40

标签: redis jedis

我通过jedis在java上有这个代码:

int shb1 = jds.storeHypnoBeats(id1, arr1);

调用此函数:

int storeHypnoBeats(String id,byte[] data)
{
     db.lpush(id.getBytes(),data);
      return 1;

}

但是当我运行java代码时,我得到了这个例外:

Exception in thread "main" redis.clients.jedis.exceptions.JedisDataException: ERR Operation against a key holding the wrong kind of value

这里是arr1和id的定义:

byte[] arr1 = new byte[]{1,2,3,4,5,6,7,8,9};
String id1 = "id1";

每件事都是正确的,因为我已经检查过,为什么我要gwt那个?!

提前致谢

1 个答案:

答案 0 :(得分:0)

id.getBytes()返回一个字节数组,但lpush的签名是:

public Long lpush(String key,String... strings)

因此,密钥必须是string而不是array of byte