定制化tomcat
springboot中是集成了tomcat容器的,如何定制化内置的tomcat呢?springboot提供了定制化的接口
1.5.x版本
在1.5.x版本中使用的是EmbeddedServletContainerCustomizer接口来进行定制化的
public class MyTomcatCustomizer implements EmbeddedServletContainerCustomizer {
@Override
public void customize(ConfigurableEmbeddedServletContainer container) {
TomcatEmbeddedServletContainerFactory factory = (TomcatEmbeddedServletContainerFactory) container;
factory.setSessionTimeout(5000);
}
}
2.x版本
而升级到springboot2.x的时候发现报错了,这个接口不存在了,springboot2.x中使用WebServerFactoryCustomizer接口进行替换的
public class MyTomcatCustomizer implements WebServerFactoryCustomizer {
@Override
public void customize(WebServerFactory factory) {
TomcatServletWebServerFactory tomcatFactory = (TomcatServletWebServerFactory) factory;
tomcatFactory.setUriEncoding(StandardCharsets.UTF_8);
}
}
本文由mdnice多平台发布