Java 从Redis集合检索数据
我已经用Java 从Redis集合检索数据,java,redis,jedis,Java,Redis,Jedis,我已经用Jedis在Redis中存储了一些数据。 现在,如果密钥存在于集合中,我想检索集合值。 我正在使用get函数,但最终出现以下错误: 针对持有错误类型值的键的错误类型操作 为了存储数据,我使用toString函数序列化了节点类 jedis.sadd(word, toString(node)); 节点是节点类的一个实例。您正在redis中创建一个集合,因此需要使用集合相关函数,如成员 或 您应该使用set而不是sadd,然后使用get读回值。步骤1:您需要自动连线redish step 1
Jedis
在Redis中存储了一些数据。
现在,如果密钥存在于集合中,我想检索集合值。
我正在使用get
函数,但最终出现以下错误:
针对持有错误类型值的键的错误类型操作
为了存储数据,我使用toString
函数序列化了节点
类
jedis.sadd(word, toString(node));
节点
是节点
类的一个实例。您正在redis中创建一个集合
,因此需要使用集合
相关函数,如成员
或
您应该使用set
而不是sadd
,然后使用get
读回值。步骤1:您需要自动连线redish
step 1 : You need to autowired redish
@Autowired
private RedisTemplate<String, Test> redisTemplate;
step 2 : KEY -> your key value for redis. ex. Your class name "Test" ,
testObj.id --> id of your obj and testObj --> your object
redisTemplate.opsForHash().put(KEY, testObj.id, testObj);
step 3 : get Your object from redis. your key and object id. if you are
need all object means
get single obj --> redisTemplate.opsForHash().get(KEY, id);
get need all object means Map<Object, Object> obj=
@自动连线
私有再贴现模板;
步骤2:键->您的redis键值。例如,您的类名“Test”,
testObj.id-->对象的id和testObj-->对象的id
redisTemplate.opsForHash().put(KEY,testObj.id,testObj);
步骤3:从redis获取您的对象。您的密钥和对象id。如果
需要一切客观手段
获取单个对象-->redisTemplate.opsForHash().get(键,id);
获取需要所有对象意味着映射对象=
redisTemplate.opsForHash().entries(键) u使用了什么代码来存储数据?@Ankur更新了问题:为什么我需要使用Spring?
smembers
返回一个集合,但我猜该值应该是一个字符串@赛博:那么你不应该使用sadd
。使用set
然后使用get
。
step 1 : You need to autowired redish
@Autowired
private RedisTemplate<String, Test> redisTemplate;
step 2 : KEY -> your key value for redis. ex. Your class name "Test" ,
testObj.id --> id of your obj and testObj --> your object
redisTemplate.opsForHash().put(KEY, testObj.id, testObj);
step 3 : get Your object from redis. your key and object id. if you are
need all object means
get single obj --> redisTemplate.opsForHash().get(KEY, id);
get need all object means Map<Object, Object> obj=