Maison > Questions et réponses > le corps du texte
Déclarez une classe de sérialisation qui gère un certain type (BaseCurrentUser)
@Bean
Jackson2JsonRedisSerializer<BaseCurrentUser> jackson2JsonRedisSerializer(ObjectMapper objectMapper) {
Jackson2JsonRedisSerializer<BaseCurrentUser> jackson2JsonRedisSerializer = new Jackson2JsonRedisSerializer<BaseCurrentUser>(
BaseCurrentUser.class);
jackson2JsonRedisSerializer.setObjectMapper(objectMapper);
return jackson2JsonRedisSerializer;
}
@Bean
RedisTemplate<String, BaseCurrentUser> currentUserRedisTemplate(JedisConnectionFactory connectionFactory,
Jackson2JsonRedisSerializer<BaseCurrentUser> jackson2JsonRedisSerializer) {
RedisTemplate<String, BaseCurrentUser> redisTemplate = new RedisTemplate<>();
redisTemplate.setConnectionFactory(connectionFactory);
redisTemplate.setDefaultSerializer(jackson2JsonRedisSerializer);
StringRedisSerializer stringRedisSerializer = new StringRedisSerializer();
redisTemplate.setKeySerializer(stringRedisSerializer);
redisTemplate.setHashKeySerializer(stringRedisSerializer);
return redisTemplate;
}
Utilisé en classe de service
@Autowired
private RedisTemplate<String, BaseCurrentUser> currentUserRedisTemplate;
Donc, chaque fois que j'ajoute un type de stockage, je dois ajouter un ensemble de @Bean ??? Est-ce vrai ? Ou je ne sais pas comment l'utiliser
Ou je ne l'utilise pas de cette façon, je ? utilisez uniquement son StringRedisTemplate et utilisez fastjson manuellement à chaque fois en sérialisation
我想大声告诉你2017-06-28 09:29:25
Configurez Redis (y compris le clustering et la sérialisation) en .xml, injectez RedisTemplate dans la classe et utilisez le rappel asynchrone pour faire fonctionner Redis (ou opérer directement)
RedisModèle