spring缓存

配置


        <!--cache-->
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-cache</artifactId>
        </dependency>

启动累加上@EnableCaching,开启缓存
在这里插入图片描述
缓存和redis不需要配置,自动使用redis

注解使用


@Slf4j
@Service
public class UserService {
    private static final String USER_CACHE = "USER_CACHE";

    @Cacheable(value = USER_CACHE, key = "#id")
    public User get(Integer id) {
        User user = new User(id, "lipo");
        log.info("select user = {}", user);
        return user;
    }

    @CachePut(value = USER_CACHE, key = "#id")
    public User update(Integer id, String name) {
        User user = new User(id, name);
        log.info("update user = {}", user);
        return user;
    }

    @CacheEvict(value = USER_CACHE, key = "#id")
    public User delete(Integer id) {
        User user = new User(id, "asdf");
        log.info("delete id = {}", id);
        return user;
    }
}

key用spel表达式
缓存名称和key自动用双冒号连接,多个缓存可以合并
在这里插入图片描述
和jetCache区别,就是jetCache缓存可以设置时间,功能多点,cache不可以

原理

1.如果需要分析自动配置的原理就需要分析自动配置类:CacheAutoConfiguration,
2.这个自动配置中导入了一个类CacheConfigurationImportSelector,这个类会引入一些缓存配置类。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值