要实现UDP通信,我们先来简单了解一下UDP协议
UDP和TCP一样是用来处理数据包的协议,但它和TCP又不一样:
1.UDP是无连接协议,客户端和服务器通信前不需要先建立连接,自然就没有TCP中等待连接accept()这个方法,通俗来说,TCP协议就像打电话,要先拨号接通以后二者才能通话,而UDP不用接通就可通话
2.UDP处理和传递消息效率高于TCP,因为UDP是无连接协议,所以资源的消耗相对小一些。
3.UDP在网络状态差强人意的状况下,数据包的丢失现象比较严重,所以具有一定的不可靠性。
以下我们来简单实现UDP的单方通信:
1.先新建立一个Java Project,里面写有关服务器的代码。如下:
以下内容写在主函数中
public static void main(String[] args) throws IOException{
System.out.println("服务器准备好了");
DatagramSocket socket;
try {
//指定端口号
socket = new DatagramSocket(8099);
while(true){
//创建字节数组,规定接收消息的最大长度
byte[] msg=new byte[10];
DatagramPacket request = new DatagramPacket(msg, 10);
//程序很可能会阻塞在这里等待接收消息
soc