Tomcat
服务端
- 自定义
- Tomcat服务器
客户端
- 自定义C
- 浏览器B
UDP
DatagramPacket
Packet用与封装UDP通信过程中发送和接受的数据,相当于码头运货的集装箱
UDP不需要建立连接,即使发送出数据对面没人接收也不会报错
UDP发送端
package com.ding.udptest;
import java.io.IOException;
import java.io.OutputStream;
import java.net.*;
import java.util.stream.Stream;
/**
* @program: IPTEST
* @description: udp传输数据测试
* @author: 王丁
* @date: 2021-09-14 15:43
**/
public class UdpClientDemo01 {
public static void main(String[] args) throws IOException {
//1.建立一个Socket连接
DatagramSocket socket = new DatagramSocket();
//2.建个包
String data="你好 UDP";
InetAddress id = InetAddress.getByName("localhost");
int port=9090;
//建立一个Packet
DatagramPacket packet = new DatagramPacket(data.getBytes(),0,data.getBytes().length,id,port);
//发送包
socket.send(packet);
//关闭资源
socket.close();
}
}
UDP接收端
package com.ding.udptest;
import java.io.IOException;
import java.net.DatagramPacket;
import java.net.DatagramSocket;
import java.net.SocketException;
/**
* @program: IPTEST
* @description: upd
* @author: 王丁
* @date: 2021-09-14 15:53
**/
public class UdpServiceDemo01 {
public static void main(String[] args) throws IOException {
//创建socket连接
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().getHostName());
System.out.println(new String(packet.getData(),0,packet.getLength()));
//释放资源
socket.close();
}
}
运行结果