@Conditional原理
在之前的博客中提到了关于自动配置的原理,但是在自动配置的时候有很多的判断,只有当这些判断都成功之后在自动配置的时候才会成功。但是我们会发现一个问题,当我们使用@Bean注解往容器中添加组件的时候也会有很多的判断。这里我们还是以HttpEncodingAutoConfiguration自动注解来说。在HttpEncodingAutoConfiguration类中有这样的的一个注解@ConditionalOnMissingBean,这个注解表示当没有后面的类的时候才会将这个组件注入到容器中。
@Bean
@ConditionalOnMissingBean(CharacterEncodingFilter.class)
public CharacterEncodingFilter characterEncodingFilter

本文深入探讨了SpringBoot中@Conditional的原理,解释了它如何决定自动配置类是否注入到容器中。通过分析HttpEncodingAutoConfiguration类,展示了@ConditionalOnMissingBean注解的工作方式。此外,文章还讨论了自动配置类生效的条件,并提供了一个例子说明如何通过Debug模式快速查看生效的自动配置类,以提升开发效率。
订阅专栏 解锁全文
956

被折叠的 条评论
为什么被折叠?



