【JAVA面试】SpringBoot如何启动的Tomcat

阿里云国内75折 回扣 微信号:monov8
阿里云国际,腾讯云国际,低至75折。AWS 93折 免费开户实名账号 代冲值 优惠多多 微信号:monov8 飞机:@monov6

提示文章先作为初版等后续时间充足后补充更深的内容

文章目录


SpringBoot如何启动的Tomcat

一、流程

在Spring Boot应用程序中内嵌的Tomcat服务器是通过Spring Boot Starter Web模块提供的功能来启动的。下面是Spring Boot启动Tomcat的大致过程

引入Spring Boot Starter Web依赖在项目的pom.xml文件中添加Spring Boot Starter Web依赖它会自动包含Tomcat作为内嵌服务器。

创建Spring Boot应用类创建一个Java类并使用@SpringBootApplication注解标记该类。该注解包含了多个注解的组合其中包括@EnableAutoConfiguration、@ComponentScan和@Configuration。

启动应用程序在Spring Boot应用类中使用SpringApplication.run()方法来启动应用程序。
1.首先,SpringBoot在启动时会先创建一个Spring容器
2在创建Spring容器过程中会利用**@CondtionalOnClass技术来判断当前classpath中是否存在Tomcat依赖**如果存在则会生成一个启动Tomcat的Bean
3. Spring容器创建完之后就会获取启动Tomcat的Bean并创建Tomcat对象并绑定端口等然后启动Tomcat

Tomcat配置加载Spring Boot会自动加载Tomcat的配置。如果在application.properties或application.yml文件中定义了Tomcat相关的配置属性如端口号、上下文路径等则会被自动加载并应用于内嵌的Tomcat服务器。

Servlet容器初始化在Tomcat启动过程中Servlet容器会被初始化。它会读取应用程序的类路径下的Servlet、Filter和Listener等相关组件并进行初始化和注册

请求处理一旦Tomcat成功启动它会监听指定的端口号并等待来自客户端的HTTP请求。当收到请求时Tomcat会根据配置的路由规则和请求的URL将请求转发给相应的Servlet进行处理

二、总结

Spring Boot通过引入Spring Boot Starter Web依赖和创建Spring Boot应用类在应用启动过程中加载Tomcat并初始化Servlet容器以提供对HTTP请求的处理能力。这种方式使得开发者可以方便地在Spring Boot应用程序中嵌入和配置Tomcat服务器从而简化了Web应用程序的开发和部署过程。


阿里云国内75折 回扣 微信号:monov8
阿里云国际,腾讯云国际,低至75折。AWS 93折 免费开户实名账号 代冲值 优惠多多 微信号:monov8 飞机:@monov6