SpringBoot与Redis缓存管理

女生的网名这么多〃 提交于 2020-02-14 10:54:34

这篇博客是前面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属性

              指定管理器和解析器的。

         ...待补充

 

 

      

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!