获取服务器的ip和端口

  1. //获取内网ip

    public static String getLocalIp() {

    try {

    for (Enumeration<NetworkInterface> interfaces = NetworkInterface.getNetworkInterfaces(); interfaces

    .hasMoreElements();) {

    NetworkInterface networkInterface = interfaces.nextElement();

    if (networkInterface.isLoopback() || networkInterface.isVirtual() || !networkInterface.isUp()) {

    continue;

    }

    Enumeration<InetAddress> addresses = networkInterface.getInetAddresses();

    if (addresses.hasMoreElements()) {

    return addresses.nextElement().getHostAddress();

    }

    }

    }

    catch (SocketException e) {

    LoggerUtil.log(Level.INFO, "获取ip出现异常:{}", e.getMessage());

    }

    return null;

    }

     

    // 获取端口

    public static String getLocalPort() {

    try {

    MBeanServer server;

    if (MBeanServerFactory.findMBeanServer(null).size() > 0) {

    server = MBeanServerFactory.findMBeanServer(null).get(0);

    } else {

    return "";

    }

    Set<ObjectName> names = server.queryNames(new ObjectName("Catalina:type=Connector,*"),

    Query.match(Query.attr("protocol"), Query.value("HTTP/1.1")));

     

    Iterator<ObjectName> iterator = names.iterator();

    if (iterator.hasNext()) {

    ObjectName name = iterator.next();

    return server.getAttribute(name, "port").toString();

    }

    }

    catch (Exception e) {

    LoggerUtil.log(Level.INFO, "获取port出现异常:{}", e.getMessage());

    }

    return "";

    }

posted @ 2021-02-22 13:07  xxlfly  阅读(529)  评论(0)    收藏  举报