我们可以在application.properties文件中写入server.port=9000使得我们的tomcat容器启动的时候,会在9000端口。
我们之前讲解bean的注入的过程中Spring Boot2.0版本源码(五):Spring Boot的Bean的解析之bean的实例化过程讲解过,我们会调用AbstractAutowireCapableBeanFactory
的applyBeanPostProcessorsBeforeInitialization()
方法,这里可以完成bean的实例化或者其他操作,通过重写postProcessBeforeInitialization()
方法即可。
里面有一个实现类WebServerFactoryCustomizerBeanPostProcessor
,里面传入的是tomcatServletWebServerFactory
这个bean对象,调用了其postProcessBeforeInitialization()
,
下面这五个bean都是由@EnableAutoConfiguration
注解注入到tomcat的
我们查看其中的一个beanTomcatServletWebServerFactoryCustomizer
类,可以看到其注入了ServerProperties
类
可以看到ServerProperties里面通过@ConfigurationProperties
注解实现的,将server开头的注解注入到当前的ioc容器中,由此就完成了对Servlet容器的个性化配置参数的注入过程。
总结