簡體   English   中英

使用@Cacheable Spring批注並手動添加到Infinispan Cache

[英]Using @Cacheable Spring annotation and manually add to Infinispan Cache

我正在嘗試在應用程序啟動之前從冷啟動加載緩存。 這樣做是為了使用戶在訪問服務器后就可以使用值,而不必訪問我的數據庫。

Spring的@Cacheable功能都很好用,問題是我如何在Cache中手動存儲對象,以便在執行函數時可以讀取它們。

Spring會以某種方式將這些對象存儲在字節中,而在手動加載緩存時,我需要模仿這些對象。 我只是想弄清楚它們如何處理函數中的返回對象,以鍵,值對的形式存儲到緩存中。

您可以使用Spring的CacheManager以編程方式訪問任何緩存。

參見https://docs.spring.io/spring/docs/current/javadoc-api/org/springframework/cache/CacheManager.html

var cache = cacheManager.getCache("foo");

cache.put(key, value);

我能夠通過將值存儲為字符串鍵和對象值來解決此問題-與Spring @Cacheable批注完美配合。 如果對象在緩存中找到,則對象將由Spring強制轉換為返回類型。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM