Maison >Java >javaDidacticiel >Comment vérifier la disponibilité des ports en Java ?

Comment vérifier la disponibilité des ports en Java ?

DDD
DDDoriginal
2024-10-31 04:38:02581parcourir

How to Check Port Availability in Java?

Détermination de la disponibilité des ports en Java

Lorsque vous travaillez avec des applications réseau, il est crucial de déterminer la disponibilité d'un port spécifique pour éviter les conflits et garantir une bonne communication. En Java, il existe plusieurs méthodes pour vérifier par programmation la disponibilité des ports :

Le projet Apache Camel fournit une implémentation efficace :

<code class="java">public static boolean available(int port) {
    if (port < MIN_PORT_NUMBER || port > MAX_PORT_NUMBER) {
        throw new IllegalArgumentException("Invalid start port: " + port);
    }

    ServerSocket ss = null;
    DatagramSocket ds = null;
    try {
        ss = new ServerSocket(port);
        ss.setReuseAddress(true);
        ds = new DatagramSocket(port);
        ds.setReuseAddress(true);
        return true;
    } catch (IOException e) {
    } finally {
        if (ds != null) {
            ds.close();
        }

        if (ss != null) {
            try {
                ss.close();
            } catch (IOException e) {
                /* should not be thrown */
            }
        }
    }

    return false;
}</code>

Cette méthode vérifie la disponibilité du port pour les connexions TCP et UDP en créer et tester un ServerSocket et un DatagramSocket en utilisant le numéro de port fourni. Si l'instanciation réussit, le port est considéré comme disponible ; sinon, il n'est pas disponible.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn