SpringBoot自动配置之@EnableAutoConfiguration注解

本文深入探讨了SpringBoot自动配置的工作原理,重点解析了@EnableAutoConfiguration注解。通过一个简单的案例,解释了配置类的加载、初始化Bean的过程,以及如何利用条件注解控制Bean的创建。在案例中,展示了如何自定义配置类,并利用@ConditionalOnProperty控制Bean的生成,以帮助读者更好地理解SpringBoot自动配置的核心机制。
摘要由CSDN通过智能技术生成

SpringBoot自动配置之@EnableAutoConfiguration注解

前言

你有想过SpringBoot为什么能够自动的帮我们创建一个Bean对象么?或许在我们使用的时候只需要在自己自定义的配置文件中加入@Bean对象就可以,但SpringBoot是如何来创建的呢。

@EnableAutoConfiguration注解

其实SpringBoot自动配置的原理主要是用的这个@EnableAutoConfiguration注解,其原理为以下三点:
(1)在@EnableAutoConfiguration注解内部使用@Import(AutoConfigurationImportSelector.class)来加载配置类;
(2)配置文件位置:META-INF/spring.factories,该配置文件中定义了大量的配置类,当SpringBoot项目启动时,会自动加载这些配置类,初始化Bean;
(3)并不是所有的Bean都会被初始化,在配置类文件中使用Condition来加载满足条件的Bean。

一个简单的案例

上面的原理看上去还是不太好理解的,这个需要查看源码结合理解,接下来我就就一个简单的例子来解释一下。
一个简单的需求:让SpringBoot自动帮我们创建一个User和Role的Bean对象。
第一步,自定义配置类

package cs.yangtze.springboot_enable_other.config;

import cs.yangtze.springboot_enable_other.entity.Role;
import cs.yangtze.springboot_enable_other.entity.User;
import org.springframework.boot.autoconfigure.condition.ConditionalOnProperty;
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

lxrqiyuan

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值