spring boot启动原理三(结合web容器,如:tomcat(默认),jetty)

 

此处的配置相关信息,用于对应web容器相关类加载操作前置条件,spring boot启动类将会有配置相关类扫描操作。

 

spring boot启动原理三(结合web容器,如:tomcat(默认),jetty)

 

 之后会加载这里的ServletWebServerFactoryAutoConfiguration类,而此类上面将会对应的容器相关的配置,如:tomcat等等

spring boot启动原理三(结合web容器,如:tomcat(默认),jetty)

 

 

spring boot启动原理三(结合web容器,如:tomcat(默认),jetty)

 

 这里可以看到,spring boot中默认加载有tomcat相关jar包所有注解条件成立的之后EmbeddedTomcat其它的对应的类信息无法加载如:Server.class

 

spring boot启动原理三(结合web容器,如:tomcat(默认),jetty)

 

 之后会对于上面配置类信息进行解析,生成对应的beanDefinition,完成对应web容器beanDefinition加载操作,在refresh()方法中的this.invokeBeanFactoryPostProcessors(beanFactory);操作中进行的

 

 spring boot启动原理三(结合web容器,如:tomcat(默认),jetty)

 

此为web容器创建的核心方法

 

spring boot启动原理三(结合web容器,如:tomcat(默认),jetty)

之后调用此处方法完成beanName的获取,以及相关web容器的创建操作。

 

spring boot启动原理三(结合web容器,如:tomcat(默认),jetty)

此处为获取web容器相关beanName重要操作方法,之后会根据这个beanName获取到对应的beanDefinition完成整个tomcat容器的创建操作。最终在最开始ioc重要方法refresh方法this.onRefresh();完成web容器的创建操作。

 

其它参考信息:

https://www.cnblogs.com/darendu/p/10559366.html 写的不咋地随便看看

https://www.jb51.net/article/202534.htm

https://my.oschina.net/u/3434392/blog/3211824

 

相关文章:

  • 2022-01-28
  • 2022-12-23
  • 2021-04-25
  • 2021-11-23
  • 2021-08-06
  • 2022-12-23
猜你喜欢
  • 2021-08-11
  • 2021-11-03
  • 2021-08-28
  • 2021-08-09
  • 2021-09-01
  • 2021-06-11
相关资源
相似解决方案