首页
学习
活动
专区
圈层
工具
发布

Spring Boot系列——Spring Boot如何启动

Spring Boot启动过程 ​上篇《Spring Boot系列——5分钟构建一个应用》介绍了如何快速创建一个Spring Boot项目并运行。...这篇,我们就通过入口类TutorialApplication看看Spring Boot是如何启动的。...注解 写过Spring Boot都知道需要有一个入口类,就是本例子中的TutorialApplication,而这个类上面必不可上的需要有一个@SpringBootApplication注解。...从classpath中搜索所有的META-INF/spring.factories配置文件,将其中org.springframework.boot.autoconfigure.EnableAutoConfiguration...遍历listeners并启动 封装入参args为AppliationArguments对象 打印banner(就是我们启动时看到的spring标识) 后面就是初始化上下文并加载上下文,具体实现就不进去看了

1.6K30
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    Spring Boot的启动

    Spring Boot的启动过程可以清晰地划分为几个主要阶段,以下是按照关键步骤进行的详细阐述: 一、启动准备阶段 加载启动类: 当SpringBoot项目启动时,它会在当前工作目录下寻找带有@SpringBootApplication...加载监听器: 使用SpringFactoriesLoader加载监听器,如EventPublishingRunListener。...四、启动内嵌的Web服务器 如果项目是一个Web应用,SpringBoot会根据配置文件中的信息自动创建Tomcat或Jetty等Web容器,并将Spring容器注册到Web容器中,使得SpringBoot...五、启动应用程序 根据之前创建好的Spring容器以及Web服务器,启动相应的线程进行服务处理。 六、监听应用程序的状态 SpringBoot会监听应用程序的状态,并根据需要进行相应的操作。...整个启动过程体现了Spring Boot的自动化和简洁性,开发者只需关注业务逻辑的实现,而无需过多关注底层的启动细节。

    54310

    使用lazyInit缩短Spring Boot启动时间

    虽然Spring Boot DevTools提供的快速重启有助于库类加载,但并不能解决Spring Boot应用启动时间长的问题。...在本文中,我们将看看如何使用SpringBoot的懒加载属性提升我们应用程序的启动时间。...起初,无论你选择哪种嵌入式服务器Tomcat或Jetty,全新轻装上阵的Spring Boot Web应用都会快速启动。随着新功能和依赖项不断加入,应用程变得越来越重,启动时间也越来越长。...在IntelliJ中,可以在项目主类的Run / Debug配置中指定它。...或者,如果你有一个用于本地开发的单独Maven配置文件,并且你使用Spring Boot Maven插件来运行你的应用程序,则可以在pom.xml中配置活动配置文件。

    5.3K2011

    Spring Boot启动原理简介

    主程序类,主入口类 /** * @SpringBootApplication 来标注一个主程序类,说明这是一个Spring Boot应用 */ @SpringBootApplication public...class HelloWorldMainApplication { public static void main(String[] args) { // Spring应用启动起来...Boot应用标注在某个类上说明这个类是SpringBoot的主配置类,SpringBoot就应该运行这个类的main方法来启动SpringBoot应用; @Target(ElementType.TYPE...Boot的配置类; 标注在某个类上,表示这是一个Spring Boot的配置类; @Configuration:配置类上来标注这个注解; 配置类 ----- 配置文件;配置类也是容器中的一个组件...Boot在启动的时候从类路径下的META-INF/spring.factories中获取EnableAutoConfiguration指定的值,将这些值作为自动配置类导入到容器中,自动配置类就生效,帮我们进行自动配置工作

    86100

    spring boot启动过程

    启动过程 版本为spring boot 2.0.3 启动 首先在启动类使用main方法运行中进入run方法 springboot的启动类我们一般都会加上SpringBootApplication注解,其实他是几个注解的集合...所以这里SpringApplicationRunListeners的用途和目的也比较明显了,它实际上是一个事件中转器,它能够感知到Spring Boot启动过程中产生的事件,然后有选择性的将事件进行中转...Boot启动过程的contextPrepared事件 listeners.contextPrepared(context); if (this.logStartupInfo) {...Boot启动过程的contextLoaded事件 listeners.contextLoaded(context); } 里面的关键方法有 配置Bean生成器以及资源加载器(如果它们非空):...这里也就解释了为什么当我们需要容器都启动,bean都加载后,也就是项目启动后需要进行一些操作的时候需要实现这俩接口的原因了 总结 Spring Boot启动时的关键步骤,主要包含以下两个方面 1.

    2.3K30

    Spring Boot 启动注解分析

    ---- 虽然我们在日常开发中,Spring Boot 使用非常多,算是目前 Java 开发领域一个标配了,但是小伙伴们仔细想想自己的面试经历,和 Spring Boot 相关的面试题都有哪些?...当然这并不是说 Spring Boot 中没什么可问的,Spring Boot 中其实也有一个非常经典的面试题,那就是 Spring Boot 中的自动化配置是怎么实现的?...@SpringBootApplication 要说 Spring Boot 的自动化配置,那必须从项目的启动类 @SpringBootApplication 说起,这是整个 Spring Boot 宇宙的起点...Spring Boot 出现之前就已经存在多年了。...Spring Boot 自带的自动化配置类,这个在之前的 vhr 视频中也和小伙伴们多次讲过,Spring Boot 自带的自动化配置类位于 spring-boot-autoconfigure-3.0.6

    43210

    Spring Boot项目搭建与启动

    于是为了简化开发者的使用,Spring社区创造性地推出了Spring Boot,它遵循约定优于配置,极大降低了Spring使用门槛,但又不失Spring原本灵活强大的功能。...Spring Boot 项目结构 使用IDEA 导入 创建的Spring Boot 项目,之后一直点击 next 按钮即可,成功打开后Spring Boot 项目的目录结构如下图所示。...启动Spring Boot项目 IDEA 启动 在 IDEA 编辑器中,有两种方式可以启动 Spring Boot 项目,分别是: 工具栏中的 Run / Debug 按钮 右键运行 Spring Boot...Maven插件启动 由于 pom.xml 文件中引入了 spring-boot-maven-plugin 插件依赖,也可以直接使用 Maven 命令来启动 Spring Boot 项目,spring-boot-maven-plugin...,结合以上两个原因我们可以使用这种方式启动 Spring Boot 项目,接下来我们来演示这一过程。

    1.5K20
    领券