开启缓存,加上@EnableCaching 注解
cacheManager缓存管理器
缓存管理器中管理了缓存对象,比如redis 缓存,map 缓存,mongodb 缓存,这些缓存对象都
是些了Cache 顶层接口
@Cacheable(value="users", key="#id")
public User find(Integer id) {
return null;
}
// 表示第一个参数
@Cacheable(value="users", key="#p0")
public User find(Integer id) {
return null;
}
// 表示User中的id值
@Cacheable(value="users", key="#user.id")
public User find(User user) {
return null;
}
// 表示第一个参数里的id属性值
@CachePut(value="users", key="#p0.id")
public User find(User user) {
return null;
}
@Cacheable 是先从缓存拿,如果有则直接返回,如果没有则调用被代理方法拿到返回值
然后存到缓存中。
@CachePut 只管存,调用到被代理方法后把返回值存到缓存中。