Ten artykuł jest lustrzanym artykułem tłumaczenia maszynowego, kliknij tutaj, aby przejść do oryginalnego artykułu.

Widok: 14268|Odpowiedź: 0

[Źródło] 【Praktyczna walka】Integracja Spring Boot Redis

[Skopiuj link]
Opublikowano 11.03.2019 16:48:17 | | | |
Wyjątek ten rozwiązuje się poprzez wstrzyknięcie instancji RedisTemplate w SpringBoot
https://www.itsvse.com/thread-7224-1-1.html
(Źródło: Architect_Programmer)
Błąd przy tworzeniu fasolki o nazwie 'stringRedisTemplate' zdefiniowanej w...
https://www.itsvse.com/thread-7225-1-1.html
(Źródło: Architect_Programmer)

Środowisko:Spring boot 2.1.1.WYDANIE
pom.xml Dodaj referencję, konfigurując ją następująco:



W application.properties skonfiguruj go następująco:


Porozmawiajmy o zmianach konfiguracji spring-boot-starter-data-redis
https://www.itsvse.com/thread-7207-1-1.html
(Źródło: Architect_Programmer)

Napisz kontroler testowy:


Uzyskujemy dostęp do kontrolera przez przeglądarkę, a następnie przeglądamy pamięć podręczną przez klienta Redis.

spring redis ma dwa szablony: StringRedisTemplate i RedisTemplate, testujemy dane przez te dwa szablony i wstawiamy pary klucz-wartość itssve i itsvse2 w następujący sposób:



Wstawiliśmy tę samą wartość, dlaczego nie tylko format wartości jest inny, ale także reguły generowania kluczy są różne.(Post jest napisany poniżej)

Krótka analiza zasad

Spójrz, czego używają serializacji RedisTemplate i StringRedisTemplate.

Widać, że StringRedisTemplate to odziedziczony RedisTemplate. Następnie ustaw metodę serializacji ciągów na StringRedisSerializer.

Kod źródłowy RedisSerializer.string():


UTF_8 Definicja:
Następnie przyjrzyjmy się kodowi serializacji RedisTemplate i zobaczymy, że domyślnie stosuje się metodę serializacji JDK JdkSerializationRedisSerializer:



Zapytanie do kodu źródłowego pokazuje, że RedisTemplate domyślnie używa JdkSerializationRedisSerializer do serializacji, podczas gdy StringRedisTemplate używa StringRedisSerializer.

Warto też zauważyć:Dane obu tych dwóch są rzadko spotykane; Oznacza to, że StringRedisTemplate może zarządzać danymi tylko w StringRedisTemplate, a RedisTemplate tylko z RedisTemplate.

To wyjaśnia, że operację dodawania przeprowadziliśmy tylko przez szablon, a istnieją różne formaty danych.

Przełączaj tryb serializacji

Jeśli nie chcesz używać domyślnej metody serializacji, jeśli używamy fastjson, musisz dostosować bean RedisTemplate, aby zastąpił oryginalny bean wstrzyknięty przez springboot:



(Koniec)




Poprzedni:Oddolny poziom skupia się na talencie, średni poziom na cnotę, a najwyższy na umysł
Następny:Nie udało się załadować plików lub asemblów z rozwiązań Microsoft.Web.Infrastructure
Zrzeczenie się:
Całe oprogramowanie, materiały programistyczne lub artykuły publikowane przez Code Farmer Network służą wyłącznie celom edukacyjnym i badawczym; Powyższe treści nie mogą być wykorzystywane do celów komercyjnych ani nielegalnych, w przeciwnym razie użytkownicy ponoszą wszelkie konsekwencje. Informacje na tej stronie pochodzą z Internetu, a spory dotyczące praw autorskich nie mają z nią nic wspólnego. Musisz całkowicie usunąć powyższą zawartość z komputera w ciągu 24 godzin od pobrania. Jeśli spodoba Ci się program, wspieraj oryginalne oprogramowanie, kup rejestrację i korzystaj z lepszych, autentycznych usług. W przypadku naruszenia praw prosimy o kontakt mailowy.

Mail To:help@itsvse.com