springboot如何获取服务器ip和端口号

1084
2023/8/15 10:22:33
栏目: 云计算
开发者测试专用服务器限时活动,0元免费领,库存有限,领完即止! 点击查看>>

在Spring Boot中,可以通过注入ServerProperties来获取服务器的IP和端口号。具体步骤如下:

  1. application.propertiesapplication.yml配置文件中,设置服务器端口号(如果已经设置,可以跳过此步骤):
server.port=8080
  1. 创建一个类,并注入ServerProperties
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.autoconfigure.web.ServerProperties;
import org.springframework.stereotype.Component;
@Component
public class ServerInfo {
private final ServerProperties serverProperties;
@Autowired
public ServerInfo(ServerProperties serverProperties) {
this.serverProperties = serverProperties;
}
public String getServerAddress() {
return serverProperties.getAddress().getHostName();
}
public int getServerPort() {
return serverProperties.getPort();
}
}
  1. 在需要获取服务器IP和端口号的地方,注入ServerInfo类,并调用相应的方法:
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RestController;
@RestController
public class MyController {
private final ServerInfo serverInfo;
@Autowired
public MyController(ServerInfo serverInfo) {
this.serverInfo = serverInfo;
}
@GetMapping("/info")
public String getInfo() {
String serverAddress = serverInfo.getServerAddress();
int serverPort = serverInfo.getServerPort();
return "Server IP: " + serverAddress + ", Server Port: " + serverPort;
}
}

这样,当访问/info接口时,将返回服务器的IP和端口号。

辰迅云「云服务器」,即开即用、新一代英特尔至强铂金CPU、三副本存储NVMe SSD云盘,价格低至29元/月。点击查看>>

推荐阅读: 选择香港服务器的理由有哪些