Spring Boot tomcat参数

时间:2021-03-13 14:50:59

主题

  初学SpringBoot,想要配置一下tomcat的端口,以前tomcat直接在它的XML里配置就好了.现在SpringBoot直接继承了,不知道哪里配置.后来找到解决方法,记录一下.

具体方法

一开始肯定网上百度一下:发现一大堆文章.基本都介绍了.只要在application.properties里加上servler.port=XXX就可以配置完成了.so easy.

但是我一直有一些疑问...基本上所有文章里都没有写..

凭什么是server.port而不是tomcat.port?

除了server.port我还能配置什么? why?????

尝试了一下以后我有一点小发现:

1.IDEA里是有自动提示的..这点很爽...所以不用担心记住配置名称

Spring Boot tomcat参数

2.虽然自动提示很好用.但是还有有一丢丢小毛病的..就是这个功能是IDEA提供的...我不知道它什么原理...哪天他不支持了我不是GG了么...(虽然感觉不太可能)

继续研究了下..

Spring Boot tomcat参数

如果我没理解错的话(初学SpringBoot可能有问题)...所有能配置的参数应该都写在了这里...不仅仅是tomcat的....这个文件在autoconfigure里...所以我觉得真很有可能是这样...

再看看我新发现的1个类

Spring Boot tomcat参数

我百度了一下@ConfigurationProperties这个注解.它可以把properties自动映射到类对象...前缀是server.成员域是port..加起来是server.port...所以我觉得前面的理解应该是正确的..

后来发现

Spring Boot tomcat参数

后来发现有个类叫做EmbeddedServletContainerCustomizerBeanPostProcessor,

他是1个BeanPostProcessor.当传入的bean是ConfigurableEmbeddedServletContainer.比如内置的tomcat的时候会使用EmbeddedServletContainerCustomizer去customize这个tomcat.而ServerProperties就是1个EmbeddedServletContainerCustomizer.所以这个时候会设置servlet容器的各种属性...

以上便是我对springboot tomcat参数配置的学习..