@Autowired一般用在变量上,spring容器会自动注入值。
如果用在方法上:
@Autowired(required = false) public void setRedisTemplate(RedisTemplate redisTemplate) { RedisSerializer stringSerializer = new StringRedisSerializer(); redisTemplate.setKeySerializer(stringSerializer); redisTemplate.setValueSerializer(stringSerializer); redisTemplate.setHashKeySerializer(stringSerializer); redisTemplate.setHashValueSerializer(stringSerializer); this.redisTemplate = redisTemplate; }
spring容器会在类加载后自动注入这个方法的参数,并执行一遍方法。
这就像static{}块语句会初始化执行,但顺序不一样。