UDP
UDP
发送端
- 构建socket
- 构建发送的数据包
- 发送数据报
- 关闭socket
import java.io.InputStream;
import java.net.DatagramPacket;
import java.net.DatagramSocket;
import java.net.InetAddress;
import java.net.SocketException;
public class UDPClient {
public static void main(String[] args) throws Exception {
//1.构建socket
DatagramSocket socket = new DatagramSocket();
//2.构建发送的数据包
String msg = "Hello, Server!";
InetAddress localhost = InetAddress.getByName("localhost");
int post = 9090;
DatagramPacket packet = new DatagramPacket(msg.getBytes(), 0 ,msg.getBytes().length, localhost,post);
//3.发送数据报
socket.send(packet);
//4.关闭socket
socket.close();
}
}
接收端
- 开放端口
- 接收数据报
- 输出packet数据
- 关闭socket
import java.net.DatagramPacket;
import java.net.DatagramSocket;
public class UDPServer {
public static void main(String[] args) throws Exception{
//1.开放端口
DatagramSocket socket = new DatagramSocket(9090);
//2.接收数据包
byte[] buffer = new byte[1024];
DatagramPacket packet = new DatagramPacket(buffer,0,buffer.length);
socket.receive(packet);
//3.输出packet数据
System.out.println(packet.getAddress().getHostAddress());
System.out.println(new String(packet.getData(),0,packet.getLength()));
//4.关闭socket
socket.close();
}
}
结果: