SpringBoot自动寻找可用端口启动

本文介绍了如何在SpringBoot中动态设置启动端口,并在应用启动时检查端口是否被占用,确保找到可用端口。通过实现WebServerFactoryCustomizer接口并覆写customize方法来动态配置端口,同时提供了测试端口占用的方法。
摘要由CSDN通过智能技术生成

首先实现这个需求需要解决2个问题

1.如何在代码内动态的制定端口

2.如何在启动时测试端口占用

 

1.动态配置端口:

参考:https://segmentfault.com/a/1190000014610478

springboot 2.x 方法:Application类实现

WebServerFactoryCustomizer<ConfigurableServletWebServerFactory>

接口,覆写customize方法

@Override
    public void customize(ConfigurableServletWebServerFactory factory) {
        ((TomcatServletWebServerFactory)factory).addConnectorCustomizers(new TomcatConnectorCustomizer() {
            @Override
            public void customize(Connector connector) {
                //在这里设置端口号,使用setPort方法
                connector.setPort(8081);

                //一些自定义调整
                Http11NioProtocol protocol = (Http11NioProtocol) connector.getProtocolHandler();
                protocol.setMaxConnections(200);
     
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值