得到我的服务器地址- Jetty web服务器



我使用jetty server (from org.mortbay.jetty.Server)

Server server = new Server(8080);

我如何得到我的服务器地址,所以我可以发送消息给它进行测试?谢谢。

使用java.net.InetAddress:

InetAddress addr = InetAddress.getLocalHost();
// Get IP Address
byte[] ipAddr = addr.getAddress();
// Get hostname
String hostname = addr.getHostName();

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

http://localhost:8080

无论如何,您还可以像这样获得Jetty当前(本地)端口号:

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

这对于集成测试可能很有用,其中您有一个测试工具(如JUnit规则或其他东西),可以在随机端口上启动嵌入式Jetty,然后,当在测试中使用该Jetty实例时,您需要知道它是从哪个端口启动的。

最新更新