springboot默认使用的是默认的Servlet容器(tomcat)。
如何定制和修改Servlet容器的相关配置?
(1)在主配置文件中修改与server的配置,例如server.port=8081等等
(2)可以修改和tomcat相关的配置,使用server.tomcat.xxx
(3)编写一个WebServerFactoryCustomizer:嵌入式的Servlet容器定制器,来修改Servlet容器的配置。我们可以建一个MyConfig.java
package com.gong.springbootcurd.config;
import com.gong.springbootcurd.component.LoginHandlerInterceptor;
import com.gong.springbootcurd.component.MyLocaleResolver;
import org.springframework.boot.web.server.ConfigurableWebServerFactory;
import org.springframework.boot.web.server.WebServerFactory;
import org.springframework.boot.web.server.WebServerFactoryCustomizer;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.web.servlet.LocaleResolver;
import org.springframework.web.servlet.config.annotation.EnableWebMvc;
import org.springframework.web.servlet.config.annotation.InterceptorRegistry;
import org.springframework.web.servlet.config.annotation.ViewControllerRegistry;
import org.springframework.web.servlet.config.annotation.WebMvcConfigurer;
//@EnableWebMvc 接管springmvc
@Configuration
public class MyMvcConfig implements WebMvcConfigurer{
@Bean
public WebServerFactoryCustomizer<ConfigurableWebServerFactory> webServerFactoryCustomizer(){
return new WebServerFactoryCustomizer<ConfigurableWebServerFactory>() {
@Override
public void customize(ConfigurableWebServerFactory factory) {
factory.setPort(8081);
}
};
}
}
启动服务器之后会发现成功修改了servlet配置: