StringRedisTemplate类在实际使用时:
只需要
@Autowired private StringRedisTemplate stringRedisTemplate;
就可以使用,并没有相关的XML配置,它是如何让Bean容器实现管理的?
传送门:SpringBoot下Redis相关配置是如何被初始化的。
RedisAutoConfiguration关键代码和RedisCacheConfiguration关键代码的分析
项目主启动类上被@SpringBootApplication注解,@SpringBootApplication又被@EnableAutoConfiguration注解。@EnableAutoConfiguration会触发扫描项目引入的jar包中的spring.factories文件,这样就会初始化类org.springframework.boot.autoconfigure.data.redis.RedisAutoConfiguration。 RedisAutoConfiguration生成RedisTemplate。RedisCacheConfiguration通过类自身的cacheManager方法注入RedisTemplate并生成RedisCacheManager对象。
以上就是RedisCacheManager对象生成的过程。以下三点:
1)POM文件中引入spring-boot-starter-redis
2)主启动类上加上注解@EnableCaching
3)application.yml中的配置信息
这三点就能保证项目中引入Redis。RedisCacheManager对象由系统自动生成,自己也可以对RedisCacheManager对象做个性化的配置。