如何为Spring Boot应用程序配置端口
【转】https://www.javaroad.cn/questions/11162
- 1 个月前
1.1通过属性文件更新 .
/src/main/resources/application.properties
server.port = 8888
Update via a yaml file.
server: port: 8888
EmbeddedServletContainerCustomizer
@Component
public class CustomContainer implements EmbeddedServletContainerCustomizer { @Override
public void customize(ConfigurableEmbeddedServletContainer container) { container.setPort(8888); } }
- 51 个月前
在
application.properties
资源中存在的文件:server.port=8082
- 71 个月前
当您需要以编程方式执行此操作时,可以在启动期间进行设置:
System.getProperties().put( "server.port", 80 );
SpringApplication.run(App.class, args);
这可能有助于环境相关的端口 . 祝你今天愉快
- 21 个月前
有三种方法可以做到这一点
1在
application.properties
文件中设置server.port属性server.port = 8090
2在
application.yml
文件中设置服务器端口属性server:
port: 8090
3在
main
方法中将属性设置为系统属性System.setProperty("server.port","8090");
- 21 个月前
您还可以使用
SERVER_PORT
环境变量来配置Spring Boot端口 . 只需设置环境变量并重新启动应用程序:set SERVER_PORT=9999 // on windows machine
export SERVER_PORT=9999 // on linux
请注意,如果您未在系统范围内设置这些环境变量,则应在同一会话中运行启动应用程序 .
- 91 个月前
由于Spring Boot提供various configuration externalization mechanism(通过各种
PropertySource
实现和/或按顺序连接到Environment
对象的处理器),您可以通过以下方法设置jar存档的任何属性 outside :- 通过命令行参数传递属性为 application argument
java -jar <path/to/my/jar> --server.port=7788
来自
SPRING_APPLICATION_JSON
中的属性(Spring Boot 1.3.0)在U * IX shell中定义环境变量:
SPRING_APPLICATION_JSON='{"server.port":7788}' java -jar <path/to/my/jar>
- 使用Java系统属性:
java -Dspring.application.json='{"server.port":7788}' -jar <path/to/my/jar>
- 通过命令行参数:
java -jar <path/to/my/jar> --spring.application.json='{"server.port":7788}'
- 定义 JVM system property
java -Dserver.port=7788 -jar <path/to/my/jar>
定义 OS environment variable
U * IX Shell
SERVER_PORT=7788 java -jar <path/to/my/jar>
- Windows
SET SERVER_PORT=7788
java -jar <path/to/my/jar>
- 将 property 置于
./config/application.properties
configuration file
server.port=7788
并运行:
java -jar <path/to/my/jar>
- 在
./config/application.yaml
放置 properties
server:
port: 7788
并运行:
java -jar <path/to/my/jar>
- 在
./application.properties
放置 properties
server.port=7788
并运行:
java -jar <path/to/my/jar>
- 在
./application.yaml
放置 properties
server:
port: 7788
并运行:
java -jar <path/to/my/jar>
您可以将上述方法组合在一起,并且列表中的前一个配置优先于后一个配置 .
例如:
SERVER_PORT=2266 java -Dserver.port=5566 -jar <path/to/my/jar> --server.port=7788
服务器将启动并侦听端口7788 .
这在PropertySources中提供优先级较低的默认属性非常有用(通常打包在存档中或在源代码中编码),然后在运行时环境中覆盖它 . 这是Spring Boot的设计理念:
开箱即用,但随着要求开始偏离默认值,请尽快摆脱困境 .
SERVER_NAME
到server.name
转换由Relaxed Binding完成 . - 41 个月前
使用属性server.port = 8080就像在其他答案中提到的那样绝对是一种方法 . 只是想提一下你也可以暴露一个环境属性:
SERVER_PORT=8080
由于Spring引导能够替换""为"",并且在最近版本中为环境变量更低为UPPER大小写 . 这在容器中特别有用,你需要做的就是定义那个环境变量而不添加/编辑
application.properties
或通过命令行传递系统属性(即-Dserver.port=$PORT
) - 141 个月前
只需在项目的
src/main/resources
中有一个application.properties
就可以了server.port=****
其中
****
指的是端口号 . - 161 个月前
您可以通过在配置中覆盖
EmbeddedServletContainerFactory
bean来指定端口(基于java或xml) . 在那里,您可以为使用的嵌入式servlet容器指定端口 . 请看那里的Spring Boot - Core "Embedded Servlet Container Support"段和例子 . 希望这可以帮助 . - 891 个月前
您可以在java代码中设置端口:
HashMap<String, Object> props = new HashMap<>();
props.put("server.port", 9999); new SpringApplicationBuilder()
.sources(SampleController.class)
.properties(props)
.run(args);
或者在application.yml中:
server:
port: 9999
或者在application.properties中:
server.port=9999
或者作为命令行参数:
-Dserver.port=9999
- 41 个月前
在
application.properties
文件中添加此项server.port= 8080
- 9101 个月前
在Spring Boot Application中,有两种主要方法可以更改Embedded Tomcat中的端口 .
Modify application.properties
首先,您可以尝试/ resources文件夹中的application.properties文件:
Modify a VM option
第二种方法,如果你想避免修改任何文件并检查你在本地只需要的东西,你可以使用vm arg:
转到运行 - >编辑配置 - > VM选项
-Dserver.port=8090
此外,如果您需要更多信息,可以在此处查看以下博客文章:Changing the port on a Spring Boot Application
- 901 个月前
希望这一个帮助
application.properties=> server.port=8090 application.yml=> server
port:8090
- 691 个月前
默认端口是:8080但我们可以在application.properties中自定义端口号,如下所示
spring.mvc.view.prefix=/WEB-INF/jsp/
spring.mvc.view.suffix=.jsp
server.port = 5050 -- #here we can give any port number.
- 121 个月前
扩展其他答案:
测试文档中有一节介绍如何在集成测试中配置端口:
在集成测试中,使用注释
@SpringBootTest
和webEnvironment
值进行端口配置 .
随机端口:
@SpringBootTest(webEnvironment=WebEnvironment.RANDOM_PORT)
您可以使用
@LocalServerPort
注入值,该值与@Value("${local.server.port}")
相同 .- 示例:
随机端口测试配置:
@RunWith(SpringRunner.class
@SpringBootTest(webEnvironment = WebEnvironment.RANDOM_PORT)
public class ExampleTest {
...
@LocalServerPort //to inject port value
int port;
}
定义的端口:
@SpringBootTest(webEnvironment=WebEnvironment.DEFINED_PORT)
它取得了 Value
server.port
如果已定义 .如果使用
@TestPropertySource(properties = "server.port=9192")
定义,则它将覆盖其他已定义的值 .如果不是,则从
src/test/resources/application.properties
(如果存在)获取值 .最后,如果未定义,则以默认
8080
开头 .
例:
定义的端口测试配置:
@RunWith(SpringRunner.class)
@SpringBootTest(webEnvironment = SpringBootTest.WebEnvironment.DEFINED_PORT)
@TestPropertySource(properties = "server.port=9192")
public class DemoApplicationTests { @Test
public void contextLoads() {
} }
- 101 个月前
通过更改application.properties,您可以在服务器配置中更改许多其他内容 . 像会话超时,地址和端口等 . 请参阅下面的帖子
参考:http://docs.spring.io/spring-boot/docs/1.4.x/reference/html/common-application-properties.html
我用了几个,如下所示 .
server.session.timeout=1
server.port = 3029
server.address= deepesh
- 131 个月前
在application.properties文件中提供端口号将解决该问题
server.port = 8080
“端口取决于您的选择,您希望托管应用程序的位置”
- 421 个月前
如said in docs使用命令行选项将
server.port
设置为jvm--server.port=8090
作为系统属性,或者在/src/main/resources/
中添加application.properties
server.port = 8090
用于随机端口使用
server.port=0
- 71 个月前
如果你谷歌为 Gradle Spring Port ,这个问题是第一个结果 .
如果您使用gradle,如果已经应用了Spring Boot Gradle Plugin,则可以执行以下操作:
bootRun {
args += ["--server.port=[PORT]"]
}
如需更复杂的答案,请参阅我的答案here .
- 21 个月前
实际上,最简单的方法是设置server.port属性 .
如果您使用STS作为IDE,从版本3.6.7开始实际上有Spring属性编辑器用于打开属性文件 .
此编辑器为所有Spring Boot属性提供自动完成功能 . 如果您编写端口并按CTRL SPACE,server.port将是第一个选项 .
- 1331 个月前
如果您正在使用
application.yml
,请将以下行添加到其中server:
port: 9000
当然0为随机端口 .
- 381 个月前
您可以在/ src / main / resources /下的application.properties中进行设置
server.port = 8090
- 311 个月前
在
application.properties
中包括以下属性server.port=8080
- 71 个月前
如果您想在本地运行它,请使用此 -
mvn spring-boot:run -Drun.jvmArguments='-Dserver.port=8085'
截至 Spring Boot 2.0 ,这是有效的命令(线索是here):
mvn spring-boot:run -Dspring-boot.run.arguments=--server.port=8085
- 71 个月前
此外,您可以以编程方式配置端口
@Configuration
public class ServletConfig {
@Bean
public EmbeddedServletContainerCustomizer containerCustomizer() {
return (container -> {
container.setPort(8012);
});
}
}
- 31 个月前
如Spring documentation中所述,有几种方法可以做到:
您在命令行中设置端口(例如8888)
-Dserver.port=8888
或--server.port=8888
示例:
java -jar -Dserver.port=8888 test.jar
或者在application.properties中设置端口
server.port=${port:4588}
或(在application.yml中使用yaml语法)
server:
port: ${port:4588}
如果在命令行中设置-Dport(或-Dserver.port)传递的端口,则将考虑此端口 . 如果没有,则默认端口为4588 .
如果要在属性文件中强制执行任何环境变量的端口,则只需编写:
server.port=8888
- 31 个月前
由于嵌入式Tomcat,大多数springboot在
port:8080
上运行 . 在某些情况下,它可能会抛出错误port 8080 already in use
. 为了避免这种问题,我们可以配置服务器端口 .使用application.properties
添加
server.port=9898
在运行时配置上
用以下参数运行你的应用程序 .
spring-boot:run -Drun.jvmArguments='-Dserver.port=8081'
- 431 个月前
正如大家所说,你可以在application.properties中指定
server.port = 9000 (可以是任何其他值)如果您在项目中使用 spring Actuator ,默认情况下它指向
8080,如果你想改变它,那么在application.properties中提一下
management.port = 9001 (可以是任何其他值)
- 41 个月前
您可以在以下方法中添加端口 .
运行 - >配置部分
在
application.xml
添加server.port=XXXX
- 151 个月前
当Spring启动应用程序启动时,Tomcat等嵌入式服务器以默认端口启动 . 嵌入式tomcat默认以8080端口启动 . 有许多方法可以更改默认服务器端口 .
Using Property File (.properties/.yml)
要使用属性文件更改服务器端口,我们需要配置 server.port 属性 .
a . 在类路径中使用application.properties,例如src \ main \ resources \ application.properties
server.port = 8585
服务器将以8585端口启动 . 要获取随机服务器端口,请为该属性指定0 .
server.port = 0
现在,spring boot将在系统中任何服务器当前未使用的端口上启动服务器 .
b . 在类路径中使用application.yml,例如src \ main \ resources \ application.yml .
server:
port: 8585
服务器将以8585端口开始 .
对于随机端口,分配0 .
server:
port: 0
Using java Command with --server.port or -Dserver.port
假设我们有一个名为my-app.jar的可执行JAR,然后在使用java命令启动spring boot应用程序时,我们可以使用如下参数 .
使用--server.port
java -jar my-app.jar --server.port=8585
使用-Dserver.port
java -jar -Dserver.port=8585 my-app.jar
服务器将以8585端口开始 .
Using java Command with --port or -Dport in Short
简而言之,我们可以删除server关键字并使其成为任何短关键字,如--port和-Dport . 我们可以使用任何短关键字 . 这里我们使用port作为短关键字 . 为了实现它,我们需要在属性文件中配置占位符,如下所示 .
使用application.properties
server.port=${port:8282}
使用application.yml
server:
port: ${port:8282}
如果我们不将端口作为参数传递,那么默认服务器将以8282开始 . 如果我们想要一个不同的端口,那么我们需要在参数中传递所需的端口,如下所示 . 假设我们有一个名为my-app.jar的可执行JAR .
使用--port
java -jar my-app.jar --port=8585
使用-Dport
java -jar -Dport=8585 my-app.jar
服务器将以8585端口开始 .
Using SERVER_PORT with SpringApplication Programmatically
SpringApplication有一个setDefaultProperties()方法,用于更改spring引导默认属性 . 假设我们想要更改默认端口,那么我们需要创建一个Map并使用SERVER_PORT键放置一个端口 . 找到这个例子 .
MyApplication.java
package com.humoyun; import java.util.HashMap;
import java.util.Map;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication; @SpringBootApplication
public class MyApplication {
public static void main(String[] args) {
SpringApplication application = new SpringApplication(MyApplication.class);
Map<String, Object> map = new HashMap<>();
map.put("SERVER_PORT", "8585");
application.setDefaultProperties(map);
application.run(args);
}
}
Spring启动将使用8585端口启动服务器 .
如何为Spring Boot应用程序配置端口的更多相关文章
- 如何在自定义端口上运行 Spring Boot 应用程序?
为了在自定义端口上运行 Spring Boot 应用程序,您可以在 application.properties 中指定端口. server.port = 8090
- Spring Boot 2.0 配置图文教程
摘要: 原创出处 https://www.bysocket.com 「公众号:泥瓦匠BYSocket 」欢迎关注和转载,保留摘要,谢谢! 本章内容 自定义属性快速入门 外化配置 自动配置 自定义创建 ...
- Spring Boot SSL [https]配置例子
前言 本文主要介绍Spring Boot HTTPS相关配置,基于自签证书实现: 通过本例子,同样可以了解创建SSL数字证书的过程: 本文概述 Spring boot HTTPS 配置 server. ...
- 【转】spring boot application.properties 配置参数详情
multipart multipart.enabled 开启上传支持(默认:true) multipart.file-size-threshold: 大于该值的文件会被写到磁盘上 multipart. ...
- 如何在Spring boot中修改默认端口
文章目录 介绍 使用Property文件 在程序中指定 使用命令行参数 值生效的顺序 如何在Spring boot中修改默认端口 介绍 Spring boot为应用程序提供了很多属性的默认值.但是有时 ...
- spring boot web相关配置
spring boot集成了servlet容器,当我们在pom文件中增加spring-boot-starter-web的maven依赖时,不做任何web相关的配置便能提供web服务,这还得归于spri ...
- 使用Maven插件构建Spring Boot应用程序镜像
使用Maven插件构建Spring Boot应用程序的Docker镜像. 环境准备 1.Linux系统 2.安装JDK,Maven 3.安装Docker 应用实践 1.在应用程序根目录下添加Docke ...
- spring boot多数据源配置(mysql,redis,mongodb)实战
使用Spring Boot Starter提升效率 虽然不同的starter实现起来各有差异,但是他们基本上都会使用到两个相同的内容:ConfigurationProperties和AutoConfi ...
- 转-spring boot web相关配置
spring boot web相关配置 80436 spring boot集成了servlet容器,当我们在pom文件中增加spring-boot-starter-web的maven依赖时,不做任何w ...
随机推荐
- 【Leetcode_easy】985. Sum of Even Numbers After Queries
problem 985. Sum of Even Numbers After Queries class Solution { public: vector<int> sumEvenAft ...
- 英雄联盟测试静态IP(固态IP)和动态IP的网速测试
在自己家里测试的,平时用迅雷下载大约600KB/S.同时,设置成动态IP的话,英雄联盟的延迟大约在100ms左右,如果设置成静态IP的话,大约是50ms左右,不过也有可能和DNS服务器的设置成静态有关 ...
- MSP430FR6972驱动模块模组调试
1. 说是会进入晶振的中断 #pragma vector=UNMI_VECTOR 2. 打了断点没进入,猜测是串口被世龙修改后,串口波特率不对,重新改回原来的,AT+NATSPEED?一直发送这个命令 ...
- 最新 农信互联java校招面经 (含整理过的面试题大全)
从6月到10月,经过4个月努力和坚持,自己有幸拿到了网易雷火.京东.去哪儿.农信互联等10家互联网公司的校招Offer,因为某些自身原因最终选择了农信互联.6.7月主要是做系统复习.项目复盘.Leet ...
- LeetCode 172. 阶乘后的零(Factorial Trailing Zeroes)
172. 阶乘后的零 172. Factorial Trailing Zeroes 题目描述 给定一个整数 n,返回 n! 结果尾数中零的数量. LeetCode172. Factorial Trai ...
- 数据结构:队列queue 函数push() pop size empty front back
队列queue: push() pop() size() empty() front() back() push() 队列中由于是先进先出,push即在队尾插入一个元素,如:可以输出:Hello W ...
- Swing的基本操作
package GUI_experience; import java.awt.*; import java.awt.Container; import java.awt.FlowLayout; im ...
- 第五章 模块之 getpass、sys、os
5.5 getpass 密码不显示(只能在终端运行) 密码不显示(只能在终端运行) import getpasspwd = getpass.getpass('请输入密码:')if pwd == '1 ...
- PAT(B) 1049 数列的片段和(C)规律
题目链接:1049 数列的片段和 (20 point(s)) 题目描述 给定一个正数数列,我们可以从中截取任意的连续的几个数,称为片段.例如,给定数列 { 0.1, 0.2, 0.3, 0.4 },我 ...
- WUSTOJ 1318: 区间的连通性(Java)
题目链接: