//发送端
//1.使用datagramSocket 指定端口,创建发送端
//2.准备数据转成字节数组
//3.封装成 DatagramPacket包裹,需要指定目的地
//4.发送包裹sent(DatagramPacket p)
//5.释放资源
package UDP开篇;
import java.net.DatagramPacket;
import java.net.DatagramSocket;
import java.net.InetSocketAddress;
import java.net.SocketException;
//发送端
//1.使用datagramSocket 指定端口,创建发送端
//2.准备数据转成字节数组
//3.封装成 DatagramPacket包裹,需要指定目的地
//4.发送包裹sent(DatagramPacket p)
//5.释放资源
```java
```java
public class UPD_Client {
public static void main(String[] args) throws Exception {
System.out.println("客户端开始工作");
//1.使用datagramSocket 指定端口,创建发送端
DatagramSocket socket =new DatagramSocket(8888);
//2.准备数据转成字节数组
String str ="第一次测试,Hellow world";
byte [] datas =str.getBytes();
//3.封装成 DatagramPacket包裹,需要指定目的地
DatagramPacket packet =new DatagramPacket(datas, datas.length,new InetSocketAddress("localhost", 9999));
//4.发送包裹sent(DatagramPacket p)
socket.send(packet);
//5.释放资源
socket.close();
}
}
//接收端
//1.使用datagramSocket 指定端口,创建接收端
//2.准备容器封装成 datagramPacket包裹
//3.阻塞式接收包裹receive(datagramPacket)
//4.分析数据
//byte[] getDate()
// getlength()
//5.释放资源
package UDP开篇;
import java.net.DatagramPacket;
import java.net.DatagramSocket;
import java.net.SocketException;
//接收端
//1.使用datagramSocket 指定端口,创建接收端
//2.准备容器封装成 datagramPacket包裹
//3.阻塞式接收包裹receive(datagramPacket)
//4.分析数据
//byte[] getDate()
// getlength()
//5.释放资源
public class UDP_Server {
public static void main(String[] args) throws Exception {
System.out.println("服务器启动...");
//1.使用datagramSocket 指定端口,创建接收端
DatagramSocket serve =new DatagramSocket(9999);
byte [] buf =new byte[1024*60];
//2.准备容器封装成 datagramPacket包裹
DatagramPacket pack =new DatagramPacket(buf, buf.length);
//3.阻塞式接收包裹receive(datagramPacket)
serve.receive(pack);
//4.分析数据
//byte[] getDate()
// getlength()
byte [] datas=pack.getData();
String str =new String(datas,0,datas.length);
System.out.println(str);
//5.释放资源
serve.close();
}
}
``