Acest articol este un articol oglindă al traducerii automate, vă rugăm să faceți clic aici pentru a sări la articolul original.

Vedere: 14268|Răspunde: 0

[Sursă] 【Luptă practică】Tutorial de integrare Redis cu Spring Boot

[Copiază linkul]
Postat pe 11.03.2019 16:48:17 | | | |
Excepția este rezolvată prin injectarea instanței RedisTemplate în SpringBoot
https://www.itsvse.com/thread-7224-1-1.html
(Sursa: Architect_Programmer)
Eroare de creare a unui bean cu numele 'stringRedisTemplate' definit în...
https://www.itsvse.com/thread-7225-1-1.html
(Sursa: Architect_Programmer)

Mediu:Spring boot 2.1.1.RELEASE
pom.xml Adaugă o referință, configurând-o astfel:



În application.properties, configurați-l astfel:


Să vorbim despre schimbările de configurație ale spring-boot-starter-data-redis
https://www.itsvse.com/thread-7207-1-1.html
(Sursa: Architect_Programmer)

Scrie un controler de test:


Accesăm controllerul prin browser și apoi vizualizăm cache-ul prin clientul Redis.

spring redis are două șabloane, StringRedisTemplate și RedisTemplate, testăm datele prin aceste două șabloane și inserăm perechile cheie-valoare itsvse și itsvse2 după cum urmează:



Am inserat aceeași valoare, de ce nu doar formatul valorii este diferit, ci și regulile de generare a cheilor sunt diferite.(Postarea spune mai jos)

Analiză succintă a principiilor

Aruncă o privire la ce folosesc serializarea RedisTemplate și StringRedisTemplate.

Poți vedea că StringRedisTemplate este un RedisTemplate moștenit. Apoi setează metoda de serializare a șirurilor să folosească StringRedisSerializer.

Cod sursă RedisSerializer.string():


UTF_8 Definiție:
Apoi, să aruncăm o privire asupra codului de serializare al RedisTemplate și poți vedea că implicit este să folosești metoda de serializare JDK JdkSerializationRedisSerializer:



Interogarea codului sursă arată că RedisTemplate folosește implicit JdkSerializationRedisSerializer pentru serializare, în timp ce StringRedisTemplate folosește StringRedisSerializer.

De asemenea, notă:Datele celor două nu sunt comune; Aceasta înseamnă că StringRedisTemplate poate gestiona doar datele din StringRedisTemplate, iar RedisTemplate poate gestiona doar datele din RedisTemplate.

Acest lucru explică faptul că tocmai am efectuat operația de adunare prin șablon, iar formatele de date sunt diferite.

Comută modul de serializare

Dacă nu vrei să folosești metoda implicită de serializare, dacă folosim fastjson, trebuie să personalizezi boabea RedisTemplate pentru a înlocui boabe-ul original injectat de springboot:



(Sfârșit)




Precedent:La nivel de bază se uită la talent, la nivel mediu se uită la virtute, iar la nivel superior se uită la minte
Următor:Eșecul de a încărca fișiere sau ansamblări din soluțiile Microsoft.Web.Infrastructure
Disclaimer:
Tot software-ul, materialele de programare sau articolele publicate de Code Farmer Network sunt destinate exclusiv scopurilor de învățare și cercetare; Conținutul de mai sus nu va fi folosit în scopuri comerciale sau ilegale, altfel utilizatorii vor suporta toate consecințele. Informațiile de pe acest site provin de pe Internet, iar disputele privind drepturile de autor nu au legătură cu acest site. Trebuie să ștergi complet conținutul de mai sus de pe calculatorul tău în termen de 24 de ore de la descărcare. Dacă îți place programul, te rugăm să susții software-ul autentic, să cumperi înregistrarea și să primești servicii autentice mai bune. Dacă există vreo încălcare, vă rugăm să ne contactați prin e-mail.

Mail To:help@itsvse.com