如何在运行时获取 SPRING Boot HOST 和 PORT 地址?

新手上路,请多包涵

如何在运行时获取部署我的应用程序的主机和端口,以便我可以在我的 java 方法中使用它?

原文由 Anezka L. 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 1.1k
1 个回答

您可以通过 Environment 获得此信息,对于 porthost 您可以使用 InternetAddress 获得

@Autowired
Environment environment;

// Port via annotation
@Value("${server.port}")
int aPort;

......
public void somePlaceInTheCode() {
    // Port
    environment.getProperty("server.port");

    // Local address
    InetAddress.getLocalHost().getHostAddress();
    InetAddress.getLocalHost().getHostName();

    // Remote address
    InetAddress.getLoopbackAddress().getHostAddress();
    InetAddress.getLoopbackAddress().getHostName();
}

原文由 Anton N 发布,翻译遵循 CC BY-SA 4.0 许可协议