如何配置Spring Boot应用程序侦听的TCP/IP端口,使其不使用默认端口8080。
当前回答
将此添加到应用程序中。属性文件
server.port= 8080
其他回答
有三种方法
1设置服务器。应用中的端口属性。属性文件
server.port = 8090
2在应用中设置服务器端口属性。yml文件
server:
port: 8090
3在“main method”中将属性设置为系统属性
System.setProperty("server.port","8090");
根据所使用的应用程序配置文件,有三种方法可以做到这一点
a)如果您正在使用应用程序。属性文件集
server.port = 8090
b)如果您正在使用应用程序。yml文件设置YAML格式的服务器端口属性,如下所示
server:
port: 8090
c)也可以在main方法中将属性设置为System属性
System.setProperty("server.port","8090");
通过编程方式,使用spring boot 2.1.5:
import org.springframework.boot.web.server.WebServerFactoryCustomizer;
import org.springframework.boot.web.servlet.server.ConfigurableServletWebServerFactory;
import org.springframework.stereotype.Component;
@Component
public class CustomizationBean implements WebServerFactoryCustomizer<ConfigurableServletWebServerFactory> {
@Override
public void customize(ConfigurableServletWebServerFactory server) {
server.setPort(9000);
}
}
如果你在使用应用程序。yml添加以下行到它
server:
port: 9000
当然,随机端口是0。
Spring-web模块默认提供了一个运行在端口号8080上的嵌入式tomcat服务器。
您可以修改如下-
A)如果你使用gradle,那么可以在你的应用程序中设置属性。yml:
server:
port: 8042
B)如果你正在使用maven,那么你可以在你的应用程序中设置属性。属性:
server.port: 8042
C)当你在自己的配置文件中有端口,并想在运行时设置它。
通过实现WebServerFactoryCustomizer接口- Spring 2.x
@Component
public class MyTomcatWebServerCustomizer implements WebServerFactoryCustomizer<TomcatServletWebServerFactory> {
@Override
public void customize(TomcatServletWebServerFactory factory) {
// customize the factory here
factory.setPort(8042);
}
}
通过实现EmbeddedServletContainerCustomizer接口- Spring 1.x
@Component
public class CustomizationBean implements EmbeddedServletContainerCustomizer {
@Override
public void customize(ConfigurableEmbeddedServletContainer container) {
// customize here
container.setPort(8042);
}
}
推荐文章
- 在流中使用Java 8 foreach循环移动到下一项
- 访问限制:'Application'类型不是API(必需库rt.jar的限制)
- 用Java计算两个日期之间的天数
- 如何配置slf4j-simple
- 在Jar文件中运行类
- 带参数的可运行?
- 我如何找到哪个程序正在使用端口80在Windows?
- 我如何得到一个字符串的前n个字符而不检查大小或出界?
- 我可以在Java中设置enum起始值吗?
- Java中的回调函数
- c#和Java中的泛型有什么不同?和模板在c++ ?
- 在Java中,流相对于循环的优势是什么?
- Jersey在未找到InjectionManagerFactory时停止工作
- 在Java流是peek真的只是调试?
- Recyclerview不调用onCreateViewHolder