原理
1、UDP协议是一种不可靠的网络协议,它在通信的两端各建立一个Socket对象,但是这两个Socket只是发送,接收数据的对象
2、基于UDP协议的通信双方而言,没有所谓的客户端和服务器端概念
Java提供了DatagramSocket类作为基于UDP协议的Socket
实例
packagetest; importjava.io.BufferedReader; importjava.io.InputStreamReader; importjava.net.DatagramPacket; importjava.net.DatagramSocket; importjava.net.InetAddress; /** *UDPCLientdeom *@author<dht925nerd@126.com> */ publicclassUDPClient{ publicstaticvoidmain(String[]args)throwsException{ DatagramSocketclientSocket=newDatagramSocket(); BufferedReaderinFromUser= newBufferedReader( newInputStreamReader(System.in) ); //获取本地IP地址 InetAddressIPAddress=InetAddress.getLocalHost(); byte[]sendData; byte[]receiveData=newbyte[1024]; System.out.println("请输入一句英文,服务器会返回其大写形式(输入exit退出)"); while(true){ Stringsentence=inFromUser.readLine(); if(sentence.equals("exit"))break; sendData=sentence.getBytes(); //创建发送数据报包,并标注源地址#,目的地址# DatagramPacketsendPacket= newDatagramPacket(sendData,sendData.length,IPAddress,9876); //发送数据报包 clientSocket.send(sendPacket); //创建接收数据报包 DatagramPacketreceivePacket= newDatagramPacket(receiveData,receiveData.length); //接收服务器的数据报包 clientSocket.receive(receivePacket); StringmodifiedSentence=newString(receivePacket.getData()); System.out.println("FROMSERVER:"+modifiedSentence); } clientSocket.close(); } }
以上就是java UDP通信的原理,希望对大家有所帮助。更多Java学习指路:Java基础
© 版权声明
文章版权归作者所有,未经允许请勿转载。
THE END
暂无评论内容