玩转springboot之springboot定制化tomcat

时间:2024-09-30 07:18:24

定制化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);
    }
}

https://zhhll.icu/2021/框架/springboot/基础/12.定制化tomcat/

本文由mdnice多平台发布