javaUDP通信的原理

美女程序员鼓励师

原理

1、UDP协议是一种不可靠的网络协议,它在通信的两端各建立一个Socket对象,但是这两个Socket只是发送,接收数据的对象

2、基于UDP协议的通信双方而言,没有所谓的客户端和服务器端概念

Java提供了DatagramSocket类作为基于UDP协议的Socket

实例

package test;

 

import java.io.BufferedReader;

import java.io.InputStreamReader;

import java.net.DatagramPacket;

import java.net.DatagramSocket;

import java.net.InetAddress;

 

/**

 * UDPCLient deom

 * @author <dht925nerd@126.com>

 */

public class UDPClient {

    public static void main(String[] args) throws Exception {

        DatagramSocket clientSocket = new DatagramSocket();

        BufferedReader inFromUser =

                new BufferedReader(

                        new InputStreamReader(System.in)

                );

        //获取本地 IP 地址

        InetAddress IPAddress = InetAddress.getLocalHost();

        byte[] sendData;

        byte[] receiveData = new byte[1024];

        System.out.println("请输入一句英文,服务器会返回其大写形式(输入exit退出)");

        while (true) {

            String sentence = inFromUser.readLine();

            if (sentence.equals("exit")) break;

            sendData = sentence.getBytes();

            //创建发送数据报包,并标注源地址#,目的地址#

            DatagramPacket sendPacket =

                    new DatagramPacket(sendData, sendData.length, IPAddress, 9876);

            //发送数据报包

            clientSocket.send(sendPacket);

            //创建接收数据报包

            DatagramPacket receivePacket =

                    new DatagramPacket(receiveData, receiveData.length);

            //接收服务器的数据报包

            clientSocket.receive(receivePacket);

            String modifiedSentence = new String(receivePacket.getData());

            System.out.println("FROM SERVER: " + modifiedSentence);

        }

        clientSocket.close();

    }

}

以上就是java UDP通信的原理,希望对大家有所帮助。更多Java学习指路:Java基础

本教程操作环境:windows7系统、java10版,DELL G3电脑。

以上是 javaUDP通信的原理 的全部内容, 来源链接: utcz.com/z/544694.html

回到顶部