获取我的服务器地址 - Jetty Web服务器

时间:2011-12-30 10:47:58

标签: java jetty web

我正在使用jetty服务器(来自org.mortbay.jetty.Server)

Server server = new Server(8080);

如何获取服务器地址以便我可以向其发送消息以进行测试? 感谢。

2 个答案:

答案 0 :(得分:6)

使用java.net.InetAddress

InetAddress addr = InetAddress.getLocalHost();

// Get IP Address
byte[] ipAddr = addr.getAddress();

// Get hostname
String hostname = addr.getHostName();

答案 1 :(得分:1)

我对你的问题有点困惑。当您启动并嵌入Jetty服务器时,地址将始终为“localhost”(您的计算机的环回接口)。在创建Server实例时,端口将是您选择的端口。因此,对于您的示例,您的嵌入式Jetty服务器将位于

http://localhost:8080

无论如何,您还可以获得Jetty当前(本地)端口号,如下所示:

int jettyPort = server.getConnectors()[0].getLocalPort();

这对于集成测试很有用,在集成测试中你有一个测试工具(比如JUnit规则或其他东西)在随机端口上启动嵌入式Jetty,然后在测试中使用这个Jetty实例时,你需要了解它的起始端口。