首页>>后端>>SpringBoot->springboot启动类代码(springboot启动类原理)

springboot启动类代码(springboot启动类原理)

时间:2023-12-13 本站 点击:0

SpringBoot的启动过程及部分注解

1、启动:每个SpringBoot程序都有一个主入口,也就是main方法,main里面调用SpringApplication.run()启动整个spring-boot程序,该方法所在类需要使用@SpringBootApplication注解。

2、springboot启动流程如下:启动流程主要分为三个部分,第一部分进行、SpringApplication的初始化模块,配置一些基本的环境变量、资源、构造器、监听器,第二部分实现了应用具体的启动方案,包括启动流程的监听模块、加载配置环境模块。

3、spring boot启动流程分为两部分 一部分是准备阶段,一部分是运行阶段 准备阶段主要有这么几步:配置bean的源,就是bean的来源,就是注解了SpringBootApplication的那个类。

4、在了解 Spring Boot 的启动流程的时候,我们先看一下一个Spring Boot 应用是如何启动的,如下是一个简单的 SpringBoot 程序,非常的简洁,他是如何做到的呢,我们接下来就将一步步分解。

5、Spring框架利用容器管理对象的生命周期,容器可以通过扫描XML文件或类上特定Java注解来配置对象,开发者可以通过依赖查找或依赖注入来获得对象。SpringBoot的启动主要是通过实例化SpringApplication来启动的。

SpringBoot启动分析

springboot启动流程如下:启动流程主要分为三个部分,第一部分进行、SpringApplication的初始化模块,配置一些基本的环境变量、资源、构造器、监听器,第二部分实现了应用具体的启动方案,包括启动流程的监听模块、加载配置环境模块。

SpringBootx只区分web环境和非web环境,而在x版本中引入了Reactive环境,即响应式环境.那么现在SpringBoot支持三种环境: Servlet的web环境、Reactive的web环境以及非web环境。

首先贴一张很不错的图,SpringBoot启动结构图,图片出自SpringBoot启动流程解析。本文的分析基于Spring Boot 5,非Spring的代码只有下面这个启。提供大量优秀的Web框架方便开发等等。

首先遍历执行所有通过SpringFactoriesLoader,在当前classpath下的META-INF/spring.factories中查找所有可用的SpringApplicationRunListeners并实例化。调用它们的starting()方法,通知这些监听器SpringBoot应用启动。

springboot启动前执行方法的几种方式

执行核心run方法初始化initialize方法执行完之后,会调用run方法,开始启动SpringBoot。

初始化initialize方法执行完之后,会调用run方法,开始启动SpringBoot。首先遍历执行所有通过SpringFactoriesLoader,在当前classpath下的META-INF/spring.factories中查找所有可用的SpringApplicationRunListeners并实例化。

您可以使用exec-maven-plugin插件来实现这个功能。该插件可以在maven的生命周期中执行Java类的main方法,只需要在pom.xml文件中配置该插件,并指定要执行的类的路径。

调 SpringFactoriesLoader#getSpringFactoriesInstances 方法,key为:SpringApplicationRunListener.class,并创建对应的实例。

在了解 Spring Boot 的启动流程的时候,我们先看一下一个Spring Boot 应用是如何启动的,如下是一个简单的 SpringBoot 程序,非常的简洁,他是如何做到的呢,我们接下来就将一步步分解。

SpringBoot的@SpringBootApplication说明以及在启动类以外的包写@Cont...

1、:##@SpringBootApplication 标识该类为SpringBoot项目启动类。

2、开启 Spring 应用上下文的自动配置功能,它试图猜测你可能需要配置的 bean 信息。表示包含该注解的类所在的包应该在 AutoConfigurationPackages 中注册。

3、##@SpringBootConfiguration:读取配置文件,配置文件的路径是当前根目录(src/main/resources/application.yml等)。

4、Spring Boot关于自动配置的源码在spring-boot-autoconfigure-x.x.x.x.jar中:当然,自动配置原理的相关描述,官方文档貌似是没有提及。


本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若转载,请注明出处:/SpringBoot/30563.html