|
|
Pubblicato su 11/03/2019 16:48:17
|
|
|
|

Ambiente:Spring boot 2.1.1.RELEASE pom.xml Aggiungi un riferimento, configurandolo come segue:
In application.properties, configuralo come segue:
Scrivi un controller di test:
Accediamo al controller tramite il browser e poi visualizziamo la cache tramite il client Redis.
spring redis ha due template, StringRedisTemplate e RedisTemplate, testiamo i dati attraverso questi due template e inseriamo le coppie chiave-valore itsvse e itsvse2 come segue:
Abbiamo inserito lo stesso valore, perché non solo il formato del valore è diverso, ma anche le regole di generazione delle chiavi sono diverse.(Il post dice sotto)
Breve analisi dei principi
Dai un'occhiata a cosa usano la serializzazione RedisTemplate e StringRedisTemplate.
Puoi vedere che StringRedisTemplate è un RedisTemplate ereditato. Poi imposta il metodo di serializzazione delle stringhe per usare StringRedisSerializer.
Codice sorgente RedisSerializer.string():
UTF_8 Definizione:
Poi, diamo un'occhiata al codice di serializzazione di RedisTemplate, e puoi vedere che il metodo predefinito è usare il metodo JDK JdkSerializationRedisSerializer:
Interrogando il codice sorgente si vede che RedisTemplate usa JdkSerializationRedisSerializer per la serializzazione di default, mentre StringRedisTemplate usa StringRedisSerializer.
Nota anche:I dati dei due non sono comuni; Questo significa che StringRedisTemplate può gestire solo i dati in StringRedisTemplate, e RedisTemplate può gestire solo i dati in RedisTemplate.
Questo spiega che abbiamo appena eseguito l'operazione di addizione tramite il template, e che ci sono diversi formati di dati.
Attiva la modalità di serializzazione
Se non vuoi usare il metodo di serializzazione predefinito, se usiamo fastjson, devi personalizzare il bean RedisTemplate per sostituire il bean originale iniettato da springboot:
(Fine)
|
Precedente:Il livello di base guarda al talento, il livello medio alla virtù, e il livello più alto alla menteProssimo:Non sono riusciti a caricare file o assembly dalle soluzioni Microsoft.Web.Infrastructure
|