spring boot mvc 监听端口问题

在使用 spring boot 内嵌服务器开发时我们都是通过 server.port 来指定 web 监听的端口,请问有什么办法能够让一个 spring boot 项目中使用多端口监听请求,比如:使用 80 与 81 同时都能接收请求。

阅读 4.7k
1 个回答

在启动类配置

@Bean
public EmbeddedServletContainerCustomizer containerCustomizer() {
    return new EmbeddedServletContainerCustomizer() {
        @Override
        public void customize(ConfigurableEmbeddedServletContainer container) {
            if (container instanceof TomcatEmbeddedServletContainerFactory) {
                TomcatEmbeddedServletContainerFactory containerFactory =
                        (TomcatEmbeddedServletContainerFactory) container;

                Connector connector = new Connector(TomcatEmbeddedServletContainerFactory.DEFAULT_PROTOCOL);
                connector.setPort(8080);
                containerFactory.addAdditionalTomcatConnectors(connector);
                
                Connector connector2 = new Connector(TomcatEmbeddedServletContainerFactory.DEFAULT_PROTOCOL);
                connector2.setPort(9090);
                containerFactory.addAdditionalTomcatConnectors(connector2);
            }
        }
    };
}
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题