当前位置: 首页 > 知识库问答 >
问题:

如何在运行时获得SPRING引导主机和端口地址?

苏振国
2023-03-14

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

共有1个答案

阎成天
2023-03-14

您可以通过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();
}
 类似资料:
  • 我有一个Spring Boot应用程序(使用嵌入式Tomcat7),并且我在中设置了,这样我就可以有一个随机端口。在服务器启动并在一个端口上运行之后,我需要能够获得所选择的端口。 我不能使用,因为它为零。这是一条看似简单的信息,那么为什么我不能从我的java代码中访问它呢?我如何访问它?

  • 我正在试用Netflix OSS来实现一个微服务架构。我希望在运行时从bootstrap.yml文件记录以查看哪个实例为请求提供服务。 我使用的是Java8。 重要的库版本为: *spring-boot-starter-web-1.5.8 *spring-boot-starter-tomcat-1.5.8 *tomcat-embedd-core-8.5.23 在浏览了stackoverflow之后

  • 脚本:-dcom.sun.management.jmxRemote-dcom.sun.management.jmxRemote.port=9890

  • 我有一个基于aspectj的通用java代理,它在几个spring boot应用程序(和几个spring boot版本)上运行。我试图找到一种在运行时获取端口的方法,在应用程序启动时(在发出请求之前)以编程方式获取端口。问题是- > 我无法使用常规方式获取Spring Boot端口,如https://stackoverflow.com/questions/30312058/spring-boot-

  • 问题内容: 我有一个spring boot应用程序(使用嵌入式tomcat 7),并且已经设置好了,所以我可以有一个随机端口。服务器启动并在端口上运行后,我需要能够获取所选择的端口。 我不能使用,因为它是零。这是一条看似简单的信息,所以为什么不能从我的Java代码访问它呢?我该如何访问? 问题答案: 该解决方案并不像我想要的那样优雅,但是我可以使用它。阅读spring文档,我可以侦听Embedde

  • 问题内容: 我需要使用Open ::URI从我的应用程序中下载一个csv文件,并为此做一个完全限定的URI。那么,在我的cucumber脚本中获取主机(更重要的是PORT)的最佳方法是什么? 注意我正在使用cucumber和selenium 问题答案: 您可以设置将用于生成应用程序服务器的端口