- UDP协议是一种不可靠的网络协议,它在通信的两端各建立一个Socket对象,但是这两个Socket只是发送,接收数据的对象,因此对于基于UDP协议的通信双方而言,没有所谓的客户端和服务器的概念
- Java提供了DatagramSocket类作为基于UDP协议的Socket
DatagramPacket(byte[] buf,int len,InetAddress add,int port)创建数据包,发送长度为len的数据包到指定主机的指定端口
blic static void main(String[] args) throws IOException {
//创建发送的Soxket对象
DatagramSocket ds = new DatagramSocket();
//创建发送内容,将内容转换成byte的字节
byte[] bytes = "你好萌哥,我到此一游玩".getBytes();
//创建发送包里面有四个内容的 包含内容 内容长度 IPv4 端口号
DatagramPacket dp = new DatagramPacket(bytes, bytes.length, InetAddress.getByName("192.168.1.78"), 12345);
//将包放入对象中
ds.send(dp);
//关流
ds.close();
}
public static void main(String[] args) throws IOException {
//创建对象 端口号为12345
DatagramSocket ds = new DatagramSocket(12345);
// 创建1024字节的数组
byte[] bytes = new byte[1024];
//创建包 里面有内容和长度
DatagramPacket dp = new DatagramPacket(bytes, bytes.length);
//包的内容接收到对象里面
ds.receive(dp);
System.out.println("接收到的数据是" + new String(dp.getData(), 0, dp.getLength()));
}