UDP
将数据及源和目的封装在数据包中,不需要建立连接
每个数据包大小限制在64k内
因无连接,是不可靠的协议
因为不需要连接,所以速度快
UDP发送端与接受端的建立
发送端
public class UdpSend {
public static void main(String[] args) throws Exception{
//创建datagramSock对象,用来创建udp的发送端
DatagramSocket ds = new DatagramSocket();
//打包数据
byte[] data = "haha".getBytes();
DatagramPacket dp =
New DatagramPacket(data,data.length,InetAddress.getByName("sds"),10000);
//发送数据
ds.send(dp);
//关闭资源
ds.close();
}
}
UDP接受端
public class UdpRec {
public static void main(String[] args) throws Exception{
//创建用来接受数据的套接字
DatagramSocket ds = new DatagramSocket(10000);
//创建DatagramPacket对象,用来处理接受到的数据包
byte[] data = new byte[1024];
DatagramPacket dp = new DatagramPacket(data,data.length);
//调用recive方法接受数据
ds.receive(dp);
//获取数据
String str = new String(dp.getData(),0,dp.getLength());
System.out.println(str);
//关闭资源
ds.close();
}
} |