zoukankan      html  css  js  c++  java
  • Java指定查看主机的端口是否已经使用

    package xuexi.Java.Two;
    import java.io.IOException;
    import java.net.InetSocketAddress;
    import java.net.Socket;
    import java.net.SocketAddress;
    import java.net.SocketTimeoutException;
    //指定查看主机的端口是否已经使用
    public class Main1 {
    public static void main(String[] args) {
    // 检测本地 80 端口
    log(isSocketAliveUitlitybyCrunchify("localhost", 80));

    // 检测本地 8080 端口
    log(isSocketAliveUitlitybyCrunchify("localhost", 8080));

    // 检测本地 8081 端口
    log(isSocketAliveUitlitybyCrunchify("localhost", 8081));

    // 检测 runoob.com 的 80 端口
    log(isSocketAliveUitlitybyCrunchify("runoob.com", 80));

    // 检测 runoob.com 的 443 端口
    log(isSocketAliveUitlitybyCrunchify("runoob.com", 443));

    // 检测 runoob.com 的 81 端口
    log(isSocketAliveUitlitybyCrunchify("runoob.com", 81));
    }

    /**
    * 判断主机端口
    *
    * @param hostName
    * @param port
    * @return boolean - true/false
    */
    public static boolean isSocketAliveUitlitybyCrunchify(String hostName, int port) {
    boolean isAlive = false;

    // 创建一个套接字
    SocketAddress socketAddress = new InetSocketAddress(hostName, port);
    Socket socket = new Socket();

    // 超时设置,单位毫秒
    int timeout = 2000;

    log("服务器: " + hostName + ", port: " + port);
    try {
    socket.connect(socketAddress, timeout);
    socket.close();
    isAlive = true;

    } catch (SocketTimeoutException exception) {
    System.out.println("SocketTimeoutException " + hostName + ":" + port + ". " + exception.getMessage());
    } catch (IOException exception) {
    System.out.println(
    "IOException - Unable to connect to " + hostName + ":" + port + ". " + exception.getMessage());
    }
    return isAlive;
    }

    private static void log(String string) {
    System.out.println(string);
    }

    private static void log(boolean isAlive) {
    System.out.println("是否真正在使用: " + isAlive + " ");
    }
    }
  • 相关阅读:
    “sockaddr”: “struct”类型重定义的错误的解决办法《转》
    2019年车险
    tinylib
    命令行利用ffmpeg实现rtmp推流《转》
    Inno setup 判断系统32位还是64位
    vs2015编译OBS-Studio21.1.12
    啃OBS源码-界面汉字
    百年孤独人物关系1
    windows命令行查看文件MD5
    python 玩爬虫安装了一大堆第三方库
  • 原文地址:https://www.cnblogs.com/husband/p/14257893.html
Copyright © 2011-2022 走看看