springBoot开启缓存

1、pom文件引入

   
   org.springframework.boot
   spring-boot-starter-cache
     

2、新建ehcache.xml 文件 放在classpath目录 maven的resources目录



	
	
	
	
	
	

3、代码使用Cacheable

@CacheConfig(cacheNames = "baseCache")  //这里的名字跟配置文件的一致
public interface UserMapper {
	@Select("select * from users where name=#{name}")
	@Cacheable
	UserEntity findName(@Param("name") String name);
}

4、清除缓存

在某个Controller中加入以下代码,可通过调用接口清除缓存
@Autowired
private CacheManager cacheManager;
@RequestMapping("/remoKey")
public void remoKey() {
	cacheManager.getCache("baseCache").clear();
}

5、启动类开启缓存

@EnableCaching // 开启缓存注解

6、效果解释

 @RequestMapping("/testCache")
    @Cacheable
    public String testCache() {
        System.out.println("hh");
        return "hh";
    }
    
 我在controller中写了一个方法加上缓存注解,注意类上也要加上相应的注解,执行第二遍的时候,testCache()方法直接不执行了,都不打印"hh"了,直接返回缓存中的数据。

7、再学一招:如果应用集群部署环境,我们一般都是使用redis作为缓存服务器

先从redis中查找数据,如果不存在则从数据库中查询,这里就会引入缓存击穿、缓存雪崩等问题,在后续专题会推出相关解决访问,敬请期待。

你可能感兴趣的:(SpringBoot)