Springboot启用多个监听端口代码实例

网友投稿 790 2023-05-30

Springboot启用多个监听端口代码实例

Springboot启用多个监听端口代码实例

前段时间服务有这么个需求,web端的接口需要有web安全相关的整改,但是对内的接口并不需要。所以服务需要多个端口启动,在此记录下

代码如下

@Configuration

public class EmbeddedTomcatConfiguration {

@Value("${server.additionalPorts}")

private String additionalPorts;

@Bean

public EmbeddedServletContainerFactory servletContainer() {

TomcatEmbeddedServletContainerFactory tomcat = new TomcatEmbeddedServletContainerFactory();

Connector[] additionalConnectors = this.additionalConnector();

if (additionalConnectors != null && additionalConnectors.length > 0) {

tomcat.addAdditionalTomcatConnectors(additionalConnectors);

}

return tomcat;

}

private Connector[] additionalConnector() {

if (StringUtils.isBlank(this.additionalPorts)) {

return null;

}

String[] ports = this.additionalPorts.split(",");

List result = new ArrayList<>();

for (String port : ports) {

Connector connector = new Connector("org.apache.coyote.http11.Http11NioProtocol");

connector.setScheme("http");

connector.setPort(Integer.valueOf(port));

result.add(connector);

}

return result.toArray(new Connector[] {});

}

}

application.yml

server:

port: ${appPort:8800}

additionalPorts: 8881,8882

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:Spring异常捕获且回滚事务解决方案
下一篇:Mybatis实现插入数据后返回主键过程解析
相关文章

 发表评论

暂时没有评论,来抢沙发吧~