1.在pom文件中添加依赖

  <dependency>
	  <groupId>org.springframework.boot</groupId>
	  <artifactId>spring-boot-starter-data-redis</artifactId>
  </dependency>

2.在application.yml文件中添加redis的配置

在这里插入图片描述

3.在service层中注入redisTemplate

没加缓存时候的代码:

    /**
     * 根据ID查询实体
     * @param id
     * @return
     */
    public Article findById(String id) {
        return articleDao.findById(id).get();
    }

加了缓存之后的代码:

    /**
     * 根据ID查询实体
     * @param id
     * @return
     */
    public Article findById(String id) {
        //先从缓存中查询当前对象
        Article article = (Article)redisTemplate.opsForValue().get("article_"+id);
        //如果没有取到,就从数据库从查询,然后存入缓存中
        if(article == null){
            article = articleDao.findById(id).get();
            redisTemplate.opsForValue().set("article_"+id,article);
        }
        return article;
    }

第一次查询在控制台会打印出相应的sql语句,第二次查询就不会打印了,这就说明第二次没有访问数据库而是访问的缓存
在这里插入图片描述

4.在修改和删除的方法中要添加上删除redis中数据的方法

    /**
     * 修改
     * @param article
     */
    public void update(Article article) {
        redisTemplate.delete("article_"+ article.getId());
        articleDao.save(article);
    }

    /**
     * 删除
     * @param id
     */
    public void deleteById(String id) {
        redisTemplate.delete("article_"+ id);
        articleDao.deleteById(id);
    }
Logo

北京人形旗下天工造物具身智能开源社区,聚焦具身天工与慧思开物两大平台

更多推荐