image.png

发送端

  1. 创建发送端的 datagramSocket 对象
  2. 创建需要传输的数据包(包含要传输的数据,目的地址,目的端口号)
  3. 调用 datagramSocket 对象的 send 方法把数据传输过去
  4. 关闭 socket 连接

    1. @Test
    2. public void sender() throws IOException {
    3. DatagramSocket datagramSocket = new DatagramSocket();
    4. String str = "我是UDP数据的发送端";
    5. byte[] data = str.getBytes();
    6. InetAddress address = InetAddress.getLocalHost();
    7. DatagramPacket datagramPacket = new DatagramPacket(data, 0, data.length, address, 8080);
    8. datagramSocket.send(datagramPacket);
    9. datagramSocket.close();
    10. }

    接收端

  5. 创建接收端的 datagramSocket 对象

  6. 创建 DatagramPacket来接受传输过来的数据
  7. 接受过来的数据转换成字符串,并打印在控制台上
    1. @Test
    2. public void receiver() throws IOException {
    3. DatagramSocket datagramSocket = new DatagramSocket(8080);
    4. byte[] buffer = new byte[1024];
    5. DatagramPacket packet = new DatagramPacket(buffer, 0, buffer.length);
    6. datagramSocket.receive(packet);
    7. String str = new String(packet.getData(),0, packet.getLength());
    8. System.out.println(str);
    9. datagramSocket.close();
    10. }