如何在 Spring Boot中更改默认端口
admin
2024-04-18 07:31:50
0

在本文中,您将学习如何在 Spring Boot 中更改默认端口。默认情况下,嵌入式 Web 服务器使用 8080端口来启动 Spring 引导应用程序。有几种方法可以更改该端口,如下所述。

使用配置文件更改端口

在 Spring Boot 中更改默认端口的最简单、更快捷的方法是覆盖配置文件中的默认值。Spring 引导使用server.port配置属性来指定端口。

以下示例演示如何在application.properties文件中指定自定义端口:

server.port=8888

现在服务器将在8888端口上启动应用程序。为application.yml,您需要添加以下内容:

server:port: 8888

如果将上述文件放置在src/main/resources/文件夹中,Spring Boot 会自动加载。

使用系统属性更改端口

您还可以设置系统属性来更改 Spring 引导应用程序的默认端口。您需要做的就是在将启动服务器的操作系统上设置一个SERVER_PORT环境变量。

对于基于 Unix 的操作系统,请键入以下命令以设置环境变量:

export SERVER_PORT=8888

对于Windows操作系统,您必须使用以下命令:

setx SERVER_PORT 8888

使用命令行参数更改端口

在 Spring 引导中更改默认端口的另一种方法是在启动应用程序时使用命令行参数。例如,如果要将应用程序打包并作为 jar 文件运行,则可以使用 Java 命令设置server.port参数:

$ java -jar spring-boot-app.jar --server.port=8888

上述命令等效于以下内容:

$ java -jar -Dserver.port=8888 spring-boot-app.jar

使用编程配置更改端口

您可以在启动应用程序或自定义嵌入式服务器配置时以编程方式更改默认端口。

若要在启动应用程序时在主应用程序类中设置端口,请使用以下代码:

@SpringBootApplication
public class Application {public static void main(String[] args) {SpringApplication application = new SpringApplication(Application.class);application.setDefaultProperties(Collections.singletonMap("server.port", "8888"));application.run(args);}}

要自定义嵌入式服务器配置,您必须实现如下所示的WebServerFactoryCustomizer接口:

@Component
public class PropertiesCustomizerimplements WebServerFactoryCustomizer {@Overridepublic void customize(ConfigurableWebServerFactory factory) {factory.setPort(8888);}
}

特定于环境的端口

如果应用程序部署在不同的环境中,则可能需要在不同的端口上运行它。

例如,您可能希望将 8888用于开发,将 8889用于 Spring 引导应用程序的生产环境。​​​​​​​

为此,请在src/main/resources/文件夹中创建一个名为application-dev.properties开发环境的新文件,其中包含以下内容:

server.port=8888

接下来,使用不同的端口为生产环境创建一个application-prod.properties文件:

server.port=8889

要激活所需的 Spring 引导配置文件,请将以下属性添加到该application.properties文件中:

# spring boot active profile - div or prod
spring.profiles.active=dev

就是这样。Spring 引导将自动为当前活动的配置文件选择服务器端口。

更改为随机端口

如果要在任何可用的随机端口上运行 Spring Boot 应用程序,只需设置server.port=0属性即可。嵌入式 Web 服务器将使用操作系统本机查找可用端口,以防止冲突并将其分配给应用程序。

相关内容

热门资讯

景洪民生村镇银行获批解散,全部... 北京商报讯(记者 宋亦桐)7月15日,云南金融监管局发布《关于景洪民生村镇银行股份有限公司解散的批复...
前5月云浮民企出口增长超两成 广东溢康通空气弹簧有限公司产品展厅。资料图片 民营企业是推进中国式现代化的生力军,是高质量发展的重要...
内娱为什么突然迷上了“下沉市场... 作者 | 文娱先声 王烨 最近,“下沉市场”成了内娱最高频的流行词之一。 艺人获奖,有人说赢在下沉...
京东AI Agent成为腾讯元... 7月15日,京东与腾讯联合宣布,京东AI Agent与元宝完成小程序生态打通。京东AI Agent将...
外企探寻广西投资新机遇 “外国企业中国行”构建起多边共赢的常态化合作机制,为促进资金跨境融通、产业成果跨国落地贡献中信力量 ...
国产具身智能项目迎来突破,机器... 截至收盘,国证机器人产业指数下跌0.1%。同花顺iFinD数据显示,机器人ETF易方达(159530...
最高法提审!重庆银行5亿债权追... 一笔5亿元的债券投资,走过五年追偿路。从债务人破产到担保人清空,从中介机构追责到管辖权拉锯,重庆银行...
百度李彦宏人民日报撰文:AI不... 瑞财经 吴文婷 7月15日,世界人工智能大会(WAIC)召开前夕,百度公司创始人李彦宏在《人民日报》...
美国拟出台新制裁法案对俄能源买... 7月15日,外交部发言人林剑主持例行记者会。 彭博社记者提问,美国正推动出台一项针对俄罗斯的新制裁法...
身价360亿美元!DeepSe... 王爷说财经讯:一夜之间,整个AI圈的财富榜被一个中国人彻底改写了。 7月14日,彭博亿万富豪指数刚一...
心脏跳动紊乱、心慌心悸? 很多人生活中都遇到过这种情况:突然心跳加速、心脏咯噔一下、心跳忽快忽慢,静坐时莫名心慌,甚至感觉心脏...
金星啤酒港股招股书失效,中式精... 记者 郑淯心 7月13日,金星啤酒提交的招股书失效。 今年1月13日,金星啤酒正式向港交所递交上市申...
深度!华强北内存条涨至近400... 本报(chinatimes.net.cn)记者黄海婷 胡梦然 深圳摄影报道 7月15日,A股存储芯片...
多只医药湘企上半年业绩预增,股... 华声在线7月15日讯(全媒体记者 仝若楠)A股三大指数今日集体下跌,截至收盘,上证指数跌0.29%,...
同心致远|康测科技携手迈基诺基... 近日,康测科技、迈基诺基因与铭毅智造于武汉正式签署三方战略合作协议。三方将充分发挥各自优势,形成“设...
解决私信回复慢难题 小红书私域... 行业痛点直击:2026年小红书矩阵运营的三座大山 做过小红书私域获客的从业者都清楚,2026年的平台...
美联储主席沃什国会首秀:通胀飙... 当地时间周二,上任美联储掌门人仅两个月的凯文・沃什站在了众议院听证会会场。 在听证会上,沃什表示充分...
明宇制药二闯港交所,28亿负债... 作者|杨立成 编辑|陈肖冉 7月8日,明宇制药有限公司(简称:明宇制药)更新招股书,二次冲击港交所1...
老乡鸡排队五年无法上市,IPO... 出品丨搜狐财经 作者丨柴鑫洋 编辑丨李文贤 打工人的干饭顶流老乡鸡,至今仍未拿到港交所的一张入场券。...
DeepSeek拟IPO!单月... 过去 12 个小时,关于 DeepSeek 的消息一个接一个炸出来。 据报道,DeepSeek 已经...