Maison > Java > javaDidacticiel > le corps du texte

Introduction détaillée à la communication Java UDP

王林
Libérer: 2019-11-26 14:32:51
avant
3144 Les gens l'ont consulté

Introduction détaillée à la communication Java UDP

Introduction :

UDP est le protocole de datagramme utilisateur Pour manipuler UDP en Java, utilisez les classes java.net et DatagramSocket sous le package DatagramPacket dans. le JDK. Les messages de données utilisateur peuvent être facilement contrôlés. La classe

DatagramPacket remplit les octets de données dans un paquet UDP, appelé datagramme.

DatagramSocket est utilisé pour envoyer ce colis. Si vous acceptez des données, vous pouvez accepter un objet DatagramPack du DatagramSocket, puis lire le contenu des données du package.

UDP est une communication simplex sans connexion, qui est rapide.

Tutoriels vidéo en ligne recommandés : Vidéo en ligne Java

Classe DatagramSocket

Constructeur :

DatagramSocket()
Copier après la connexion

Créez une instance, généralement utilisée pour la programmation client. Elle n'a pas de port d'écoute spécifique et n'en utilise qu'un temporaire.

DatagramSocket(int port)
Copier après la connexion

Créez une instance et surveillez les paquets du port Port.

DatagramSocket(int port, InetAddress laddr)
Copier après la connexion

C'est un constructeur très utile Lorsqu'une machine a plus d'une adresse IP, l'instance qu'elle crée ne reçoit que les messages de LocalAddr. Le port et l'adresse sont spécifiés dans l'objet

DatagramSocket(SocketAddress bindaddr)
Copier après la connexion

bindaddr.

Fonctions couramment utilisées :

receive(DatagramPacket p)
Copier après la connexion

Recevoir des paquets de données dans p. La méthode de réception est bloquante. Si aucun paquet de datagramme n'est reçu, il sera bloqué.

send(DatagramPacket p)
Copier après la connexion

Envoyer le message p à la destination.

setSoTimeout(int timeout)
Copier après la connexion

Définissez le délai d'expiration en millisecondes.

close()
Copier après la connexion

Fermez DatagramSocket. Lorsque l'application se ferme, elle libère généralement activement des ressources et ferme le Socket. Cependant, en raison d'une sortie anormale, les ressources peuvent ne pas être recyclées. Par conséquent, vous devez utiliser activement cette méthode pour fermer le Socket lorsque le programme est terminé, ou fermer le Socket après avoir détecté une exception.

2. Classe DatagramPacket

La classe DatagramPacket est utilisée pour traiter les messages, regrouper des tableaux d'octets, des adresses cibles, des ports cibles et d'autres données dans message ou désassemblez le message dans un tableau d'octets.
Constructeur :

DatagramPacket(byte[] buf, int length, InetAddress addr, int port)
Copier après la connexion

Prenez les données de longueur longue à partir du décalage du tableau d'octets buf pour créer un objet de données. L'adresse cible est addr et le port cible est port.

DatagramPacket(byte buf[], int offset, int length, SocketAddress address)
Copier après la connexion

Récupère les données de longueur à partir du décalage du tableau d'octets buf pour créer un objet de données. L'adresse cible est l'adresse

Fonctions communes :

getData() byte[]
Copier après la connexion

Obtenu à partir de. l'instance Le tableau d'octets codant dans le message.

setData(byte[] buf, int offset, int length)
Copier après la connexion

Définir le contenu des données dans le package datagramme

3. Processus de communication de la communication UDP

Expéditeur UDP :

1. Établissez le service de mise à jour.

2. Fournissez des données et encapsulez les données dans des paquets de données.

3. Envoyez le paquet de données via la fonction d'envoi du service socket.

4. Fermer les ressources.

Récepteur UDP :

1 Définir le service udpsocket, qui écoute généralement sur un port.

2. Définissez un paquet de données pour stocker les données d'octet reçues.

3. Stockez les données reçues dans le paquet de données défini via la méthode de réception du service socket.

4. Grâce aux fonctions uniques de l'objet paquet de données, ces différentes données sont extraites et imprimées sur la console.

5. Fermer les ressources.

Pour plus de questions connexes, veuillez consulter le didacticiel de l'article Java : Démarrer avec Java

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!

Étiquettes associées:
source:csdn.net
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
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal