Créer un modèle Redis
private RedisTemplate<String, ?> createRedisTemplateForEntity() {
RedisTemplate<String, Object> redisTemplate = new RedisTemplate<String, Object>();
redisTemplate.setConnectionFactory(getRedisConnectionFactory());
redisTemplate.setHashValueSerializer(new StringRedisSerializer());
redisTemplate.setKeySerializer(new StringRedisSerializer());
redisTemplate.setValueSerializer(new StringRedisSerializer());
redisTemplate.setHashKeySerializer(new StringRedisSerializer());
redisTemplate.afterPropertiesSet();
return redisTemplate;
}
Pourquoi crée-t-il une chaîne étrange comme clé ?
La clé est créée en fonction des attributs d'argument présents dans votre méthode qui est annotée comme pouvant être mise en cache. C'est ainsi que Spring lit la valeur du cache à partir de Redis.