[英]Spring Boot Hibernate Ehcache entity caching implementation
我需要在應用程序啟動期間查詢數據庫表,並將表條目(實體)存儲在ehcache中。 每當有針對該行的請求時,數據(實體)都需要從cahce中獲取數據,而不是去DB。
我已經使用方法級緩存實現了它,但是當方法參數改變時它沒有用的時候,DB就會受到打擊,如何避免它是實體級緩存的一個例子。
我正在使用Spring Boot 1.2.4 ehcache和Spring Boot Data JPA。
您可以預加載數據。 手動。 或與loader-writer一起使用Cache.getAll
。 或來自JSR 107的Cache.loadAll
。
一種簡單的方法是
List<MyEntity> entities = entityManager.getAll();
entities.forEach(e -> cache.put(e.getId(), e));
List<Long> entities = entityManager.getAllIds();
entities.forEach(id -> cache.get(id));
最后,loadAll只是cache.loadAll
。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.