Maison > Java > javaDidacticiel > le corps du texte

Mon port est-il disponible : comment vérifier avec Java ?

Mary-Kate Olsen
Libérer: 2024-10-31 03:24:02
original
251 Les gens l'ont consulté

Is My Port Available: How to Check with Java?

Disponibilité des ports avec Java : un guide complet

Dans le développement de logiciels, il devient souvent nécessaire de déterminer la disponibilité d'un port spécifique sur un machine donnée pour assurer une communication et un transfert de données transparents. Pour les programmeurs Java, déterminer la disponibilité des ports est simple en utilisant une combinaison de sockets serveur et de sockets datagramme.

Utilisation des sockets serveur et datagramme

Le projet Apache Camel fournit une implémentation élégante pour vérifier la disponibilité du port :

<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>
Copier après la connexion

Détails d'implémentation

Le code ci-dessus tente de créer à la fois un socket serveur et un socket datagramme sur le port spécifié. Si les deux opérations réussissent, cela indique que le port est disponible pour les connexions TCP (Transmission Control Protocol) et UDP (User Datagram Protocol).

Considérations supplémentaires

C'est Il est essentiel de s'assurer que le port que vous vérifiez se situe dans la plage de ports valide, généralement entre 1 et 65535. Les ports inférieurs à 1024 sont généralement réservés aux services système privilégiés, leur utilisation peut donc nécessiter des privilèges élevés ou des autorisations spéciales.

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!

source:php.cn
Déclaration de ce site Web
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
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal