在整合 MyBatis 的基础上,添加 Spring Cache 缓存
SpringBoot 中默认使用 Spring Cache,项目中添加相关的依赖
org.springframework.boot
spring-boot-starter-cache
在项目的启动类里添加注解,他会去扫描每一个,检查是否存在对应的缓存,如果有执行缓存。
@SpringBootApplication
@EnableCaching
@MapperScan("com.spring.springboot.dao")
publicclassSpringbootRecordMybatisApplication{
publicstaticvoidmain(String[] args){
SpringApplication.run(SpringbootRecordMybatisApplication.class, args);
}
}
在对应得方法上添加来获取缓存的数据或者获取和缓存对应方法的执行结果
UserServiceImpl.java 部分代码
@Override
@Cacheable(value="id",key ="#id")
publicUser selectByPrimaryKey(Integer id) {
System.out.println("从数据库中获取 id 对应得数据。 ");
returnuserMapper.selectByPrimaryKey(id);
}
用测试数据,当第一次查询某个 id 的数据时,缓存中没有该数据,所以会调用方法从数据库中获取数据。
控制台输出显示试从数据库中获取。
清除控制台中内容,再次查询该 id 的数据,控制台没有输出从数据库中获取,说明没有执行该方法,而使用了缓存。
小白的成长记录
领取专属 10元无门槛券
私享最新 技术干货