2017-03-17 1 views
0

Ich versuche, Ordner im Redis-Cache meines Projekts zu erstellen. Ich möchte etwas ähnliches wie, was Frühling automatisch mit Frühlingssitzung tun.Wie erstellt man Ordner in Redis Cache mit Frühling?

enter image description here

Ich habe eine Menge von „displayitem“ Einträge und ich möchte, dass sie in einem „displayitem“ -Ordner speichern.

Hier ist mein Code:

@Cacheable(value = "displayItem", cacheManager = "longLifeCacheManager") 
public DisplayItem getDisplayItem(String displayItemCode) { 
    // Do a lot of things 
} 

@Cacheable(cacheManager = "mediumLifeCacheManager", value = "preferences:userPreferences", key = "#zenithName") 
public UserPreferences getUserPreferencesByZenithName(String zenithName) { 
    // Do something 
} 

Wenn ich den Wert von „folder: displayitem“ ersetzen, die ihm einen Ordner erstellen, sondern nur für die Schlüssel (wie ich für die Präferenzen im Screenshot tat). Ich finde nicht, wie alle Werte in diesem gleichen Ordner gespeichert werden.

Wie kann ich das tun?

Antwort

1

Ich habe endlich eine Lösung gefunden. In der Konfiguration des CacheManagers muss ich UserPrefix mit True setzen.

@Bean(name = "mediumLifeCacheManager") 
public CacheManager mediumLifeCacheManager(RedisTemplate redisTemplate) { 
    RedisCacheManager cacheManager = new RedisCacheManager(redisTemplate); 
    cacheManager.setDefaultExpiration(redisExpirationMedium); 
    cacheManager.setUsePrefix(true); 
    return cacheManager; 
} 

Jetzt funktioniert das wie ich will.

enter image description here

Verwandte Themen