这篇博客是前面https://www.cnblogs.com/shijinglu2018/p/12258646.html
(SpringBoot与MyBatis/Redis整合)的延续。
为什么要使用MyBatis?为什么要使用Redis?
用MyBatis是进行java连接数据库的一种封装和简化,方便去调用,过程中不用过多去手动写如何用反射加载驱动包,如何到数据库中取得数据等,当然不可少的是需要建模和建接口,但是由于MyBaits,所以已经方便很多了; 用Redis的是因当到数据库中取数的时候会频繁地执行某些sql,去数据库中取数之类的操作,同一个操作数据的方法被反复执行,大大降低了效率,所以将其放到缓存,以减少重复执行的效率,如果某个数据访问操作尤其频繁,则该优势更加明显。
SpringBoot缓存注解小结
说明:该注解多有Spring框架提供,SpringBoot框架对这些注解进行了继承。
//... @EnableCaching //开启SpringBoot缓存管理支持 @SpringBootApplication public class RunSpringBootRedis{ public static void main(String[] args) { SpringBootApplication.run(RunSpringBootRedis.class,args); } } public class xxxService{ //用该注解对数据操作方法进行缓存管理,对处理后的结果数据进行了缓存 @Cacheable(cacheNames="xxx") public Person findById(int stuff_id){ //... } }
1.@EnableCache注解
常用于启动类上,用来开启缓存。
2.@Cacheable注解
常用于方法或类上,对方法处理后的数据进行缓存。
常有属性:
1)value/cacheNames
用于指定缓存空间名,若只是指定单个名称空间,则该属性可不写,若多个用逗号分隔,例如@Cacheable(cacheName={"person1","person2"}。
2)key属性
缓存数据的唯一标识,用注解标记方法参数值,缓存数据本质是以Map类型数据进行缓存,key用于指定唯一标识,value用于指定缓存的数据。
3)keyGenerator属性
用于存储建的生成器的定义。
4)cacheManager/cacheResolver属性
指定管理器和解析器的。
...待补充
来源:https://www.cnblogs.com/shijinglu2018/p/12306345.html