spring中 @ConditionalOnBean

@Configuration
public class RedisConfig {
    @Bean
    @ConditionalOnMissingBean(name="redisTemplate")
    public RedisTemplate redisTemplate(
            RedisConnectionFactory redisConnectionFactory)throws UnknownHostException {
        //new一个Redis客户端
        RedisTemplate template = new RedisTemplate<>();
        //将配置类的信息自动配置进来
        template.setConnectionFactory(redisConnectionFactory);
        return template;
    }
}

 

上面的方法上@ConditionalOnMissingBean表示在Spring容器中如果有一个Bena的name是redisTemplate那将不需要再执行被此注解修饰的代码块,也就是此方法。

注意 :@ConditionalOnMissingBean只能在@Bean 注释的方法上使用,不能再@Component 注释的类上使用。
 

 

 

 

你可能感兴趣的:(spring,boot)