classcastexception在将jackson2hashmapper与decoratingstringhashmapper一起使用时发生

7ivaypg9  于 2021-06-10  发布在  Redis
关注(0)|答案(0)|浏览(301)

我很难理解这里发生了什么。我正在使用jackson2hashmapper和decoratingstringhashmapper将哈希转换为自定义对象,并引发以下异常java.lang.classcastexception:class java.util.linkedhashmap不能转换为class domain.data。任何反馈都将不胜感激。谢谢。

  1. @Bean
  2. public RedisTemplate<String, Object> redisTemplate(RedisConnectionFactory connectionFactory, ObjectMapper objectMapper) {
  3. final RedisTemplate<String, Object> redisTemplate = new RedisTemplate<>();
  4. redisTemplate.setConnectionFactory(connectionFactory);
  5. redisTemplate.setKeySerializer(new StringRedisSerializer());
  6. redisTemplate.setValueSerializer(new StringRedisSerializer());
  7. redisTemplate.setHashKeySerializer(new StringRedisSerializer());
  8. redisTemplate.setHashValueSerializer(new GenericJackson2JsonRedisSerializer(objectMapper));
  9. return redisTemplate;
  10. }
  11. @Bean
  12. public Jackson2HashMapper jackson2HashMapper(ObjectMapper objectMapper) {
  13. return new Jackson2HashMapper(objectMapper, false);
  14. }
  1. @Resource(name = "redisTemplate")
  2. private HashOperations<String, String, Map<String, String>> hashOperations;
  3. @Autowired
  4. private Jackson2HashMapper jackson2HashMapper;
  1. List<Map<String, String>> hashValues = hashOperations.multiGet("name", keys);
  2. HashMapper<Data, String, Object> hashMapper = new DecoratingStringHashMapper(jackson2HashMapper);
  3. Data data = hashMapper.fromHash(hashValues.get(0));

暂无答案!

目前还没有任何答案,快来回答吧!

相关问题