Spirng Cache(第一篇) 初体验
从3.1版开始,Spring Framework提供了对现有Spring应用程序透明地添加缓存的支持。与事务 支持类似,缓存抽象允许一致地使用各种缓存解决方案,而对代码的影响最小。
从Spring 4.1开始,通过JSR-107注释和更多自定义选项的支持,缓存抽象得到了显着改进。
注解驱动
只需要掌握下面5个缓存相关注解就可以使用它了。更多请参考
@Cacheable触发缓存入口@CacheEvict触发缓存驱逐(删除缓存)@CachePut更新缓存而不会干扰方法执行@Caching重新组合要在方法上应用的多个缓存操作@CacheConfig在类级别共享一些常见的缓存相关设置
缓存的使用
话不多说,让我们体验一下它
环境信息:java8+maven3.x+spring-boot1.5.x
本章所有示例都在BookService类中完成,缓存名称是books,使用@CacheConfig注解统一配置
@Service
@CacheConfig(cacheNames = "books")
public class BookService {
}
Book实体,省略Get/Set方法
public class Book {
private Long id;
private String bookName;
private String isbn;
}
添加/使用缓存@Cacheable
查询Book,并加入缓存,以后再查询从缓存中获取,这里没有指定缓存key默认使用方法参数isbn
@Cacheable
public Book findBook(String isbn) {
return createBook(isbn);
}
模拟数据,每次查询创建一个Book实体,ID是随机数。
private Book createBook(String isbn) {
Book book =
238



被折叠的 条评论
为什么被折叠?



