UDP

UDP

发短信:不用连接,需要知道对方的地址!

发送短信

package com.shushu.net1;

import java.net.DatagramPacket;
import java.net.DatagramSocket;
import java.net.InetAddress;
import java.net.SocketException;

public class UdpClientDemo01 {
   public static void main(String[] args) throws Exception {
       //1.建立一个Socket
       DatagramSocket socket = new DatagramSocket();

       //2.建个包
       String msg = "你好啊!服务器。";
       InetAddress localhost = InetAddress.getByName("localhost");
       int port = 9090;
       //数据、数据的长度起始、发给谁
       DatagramPacket packet = new DatagramPacket(msg.getBytes(),msg.getBytes().length,localhost,port);

       //3.发送包
       socket.send(packet);
       //4.关闭流
       socket.close();

  }
}

接收信息

package com.shushu.net1;

import java.net.DatagramPacket;
import java.net.DatagramSocket;
import java.net.SocketException;

public class UdpServerDemo01 {
   public static void main(String[] args) throws Exception {
       //开放端口
       DatagramSocket socket = new DatagramSocket(9090);
       //接收数据包
       byte[] buffer = new byte[1024];
       DatagramPacket packet = new DatagramPacket(buffer,0,buffer.length);

       socket.receive(packet);//阻塞接收

       System.out.println(packet.getAddress().getHostAddress());
       System.out.println(new String(packet.getData(),0,packet.getLength()));

       //关闭连接
       socket.close();
  }
}

 

posted @ 2021-04-29 22:32  术树  阅读(43)  评论(0编辑  收藏  举报