第
在SpringBoot中更改默认端口的方法总结
目录使用配置文件更改端口使用系统属性更改端口使用命令行参数更改端口使用编程配置更改端口特定于环境的端口更改为随机端口
使用配置文件更改端口
在SpringBoot中更改默认端口的最简单、更快捷的方法是覆盖配置文件中的默认值。Spring引导使用server.port配置属性来指定端口。
以下示例演示如何在application.properties文件中指定自定义端口:
server.port=8888
现在服务器将在8888端口上启动应用程序。为application.yml,您需要添加以下内容:
server:
port:8888
如果将上述文件放置在src/main/resources/文件夹中,SpringBoot会自动加载。
使用系统属性更改端口
您还可以设置系统属性来更改Spring引导应用程序的默认端口。您需要做的就是在将启动服务器的操作系统上设置一个SERVER_PORT环境变量。
对于基于Unix的操作系统,请键入以下命令以设置环境变量:
exportSERVER_PORT=8888
对于Windows操作系统,您必须使用以下命令:
setxSERVER_PORT8888
使用命令行参数更改端口
在Spring引导中更改默认端口的另一种方法是在启动应用程序时使用命令行参数。例如,如果要将应用程序打包并作为jar文件运行,则可以使用Java命令设置server.port参数:
$java-jarspring-boot-app.jar--server.port=8888
上述命令等效于以下内容:
$java-jar-Dserver.port=8888spring-boot-app.jar
使用编程配置更改端口
您可以在启动应用程序或自定义嵌入式服务器配置时以编程方式更改默认端口。
若要在启动应用程序时在主应用程序类中设置端口,请使用以下代码:
@SpringBootApplication
publicclassApplication{
publicstaticvoidmain(String[]args){
SpringApplicationapplication=newSpringApplication(Application.class);
application.setDefaultProperties(Collections.singletonMap(server.port,8888));
application.run(args);
}
要自定义嵌入式服务器配置,您必须实现如下所示的WebServerFactoryCustomizer接口:
@Component
publicclassPropertiesCustomizer
implementsWebServerFactoryCustomizerConfigurableWebServerFactory{
@Override
publicvoidcustomize(ConfigurableWebServerFactoryfactory){
factory.setPort(8888);
}
特定于环境的端口
如果应用程序部署在不同的环境中,则可能需要在不同的端口上运行它。
例如,您可能希望将8888用于开发,将8889用于Spring引导应用程序的生产环境。
为此,请在src/main/resources/文件夹中创建一个名为application-dev.properties开发环境的新文件,其中包含以下内容:
server.port=8888
要激活所需的Spring引导配置文件,请将以下属性添加到该application.properties文件中:
#springbootactiveprofile-divorprod
spring.profiles.active=dev
就是这样。Spring引导将自动为当前活动的配置文件选择服务器端口。
更改为随机端口
如果要在任何可用的随机端口上运行SpringBoot应用程序,只需设置server.port=0属性即可。嵌入式Web服务器将使用操作系统本机查找可用端口,以防止冲突并将其分配给应用程序。