• 如何在 Spring Boot中更改默认端口


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

    使用配置文件更改端口

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

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

    server.port=8888
    

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

    1. server:
    2. 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
    

    使用编程配置更改端口

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

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

    1. @SpringBootApplication
    2. public class Application {
    3. public static void main(String[] args) {
    4. SpringApplication application = new SpringApplication(Application.class);
    5. application.setDefaultProperties(Collections.singletonMap("server.port", "8888"));
    6. application.run(args);
    7. }
    8. }

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

    1. @Component
    2. public class PropertiesCustomizer
    3. implements WebServerFactoryCustomizer {
    4. @Override
    5. public void customize(ConfigurableWebServerFactory factory) {
    6. factory.setPort(8888);
    7. }
    8. }

    特定于环境的端口

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

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

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

    server.port=8888
    

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

    server.port=8889
    

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

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

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

    更改为随机端口

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

  • 相关阅读:
    小程序毕设作品之微信体育馆预约小程序毕业设计成品(8)毕业设计论文模板
    Docker一键快速私有化部署(Ollama+Openwebui) +AI大模型(gemma,llama2,qwen)20240417更新
    华为22级专家十年心血终成云原生服务网格进阶实战文档,是真的6
    upload-labs第十七十八关
    全志V3S嵌入式驱动开发(开发环境再升级)
    MySql——事物
    面向目标的多模态情感分析方法
    虚函数、纯虚函数、多态
    独孤思维:自动得3w,这样赚钱颠覆你的认知
    满足你甜食需求的葡萄酒是怎样的?
  • 原文地址:https://blog.csdn.net/allway2/article/details/128210587