|
|
Publié sur 11/03/2019 16:48:17
|
|
|
|

Environnement :Spring boot 2.1.1.RELEASE pom.xml Ajoutez une référence, en la configurant comme suit :
Dans application.properties, configurez-le comme suit :
Écrivez un contrôleur de test :
Nous accédons au contrôleur via le navigateur puis consultons le cache via le client Redis.
spring redis possède deux modèles, StringRedisTemplate et RedisTemplate ; nous testons les données via ces deux modèles, et insérons les paires clé-valeur itsvse et itsvse2 comme suit :
Nous avons inséré la même valeur, pourquoi non seulement le format de valeur est différent, mais aussi les règles de génération de clés sont différentes.(Le post indique ci-dessous)
Brève analyse des principes
Regardez ce que RedisTemplate et StringRedisTemplate utilisent en sérialisation.
Vous pouvez voir que StringRedisTemplate est un RedisTemplate hérité. Ensuite, réglez la méthode de sérialisation de chaînes pour utiliser StringRedisSerializer.
Code source RedisSerializer.string() :
UTF_8 Définition :
Ensuite, regardons le code de sérialisation de RedisTemplate, et vous verrez que par défaut est d’utiliser la méthode de sérialisation JDK JdkSerializationRedisSerializer :
L’interrogation du code source montre que RedisTemplate utilise par défaut JdkSerializationRedisSerializer pour la sérialisation, tandis que StringRedisTemplate utilise StringRedisSerializer.
À noter aussi :Les données des deux ne sont pas courantes; Cela signifie que StringRedisTemplate ne peut gérer que les données dans StringRedisTemplate, et que RedisTemplate ne peut gérer que les données dans RedisTemplate.
Cela explique que nous avons simplement effectué l’opération d’addition via le modèle, et qu’il existe différents formats de données.
Basculez le mode de sérialisation
Si vous ne souhaitez pas utiliser la méthode de sérialisation par défaut, si nous utilisons fastjson, vous devez personnaliser le grain RedisTemplate pour remplacer le bean original injecté par springboot :
(Fin)
|
Précédent:Le terrain s’intéresse au talent, le niveau intermédiaire à la vertu, et le niveau supérieur à l’espritProchain:Échec de charger des fichiers ou assemblages depuis les solutions Microsoft.Web.Infrastructure
|