SpringBoot启动原理

这个在我们的面试中经常被问到,面试十次,大概命中率在百分之八十左右,springboot为我们做的自动配置,确实方便很多,它相较于spring而言,简化了很多配置,内置了Tomcat,大大提高了我们开发效率,下面一步步揭开springboot的神秘面纱,让他不在神秘。

我们开发一个Spring Boot项目都会用到如下一个启动类

@SpringBootApplication
public class Application{

    public static void main(String[] args){

        SpringApplication.run(Application.class,args);
    }
}

@SpringBootApplication是SpringBoot的核心注解,它是一个组合注解

虽然上面有很多 个Annotation进行了原信息标注,但实际上重要的只有三个Annotation:

@SpringBootConfiguration:是@Configuration注解的变体,用来代替applicationContext.xml配置文件,所有这个配置文件里面能做到的事情都可以通过这个注解所在类来进行注册。

@EnableAutoConfiguration:开启自动配置,不用配置web.xml/spring.xml/springmvc.xml

@ComponentScan:默认扫描的是当前启动类所在包及主启动类所在包的子包下加了注解的类

面试回答的时候可以先从SpringBootApplication注解说,之后在从启动run()方法的时候来说,启动run()方法,它下面有个rufreshContext()方法刷新容器,它会在类路径下找到MET-INFO,sprign.factories,里面有很多配置类,它会根据你是否书写配置类,是否引入相关依赖,将指定的Bean注入到容器中

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值