我正在使用 spring-cache 来改进数据库查询,效果如下:
@Bean
public CacheManager cacheManager() {
return new ConcurrentMapCacheManager("books");
}
@Cacheable("books")
public Book getByIsbn(String isbn) {
return dao.findByIsbn(isbn);
}
但现在我想在启动时预先填充完整的图书缓存。这意味着我想调用dao.findAll()
并将所有值放入缓存中。该例程应仅定期安排。
但是在使用时如何显式填充缓存@Cacheable
?