网络协议基础之UDP协议

UDP协议:
  1. 以数据为中心,非面向对象,不安全可能存在数据丢失,效率高
UDP协议通信Demo【未实现接受java基本数据类型】:

客服端:

package cn.woniux.udp;
/**
 * 客服端
 * 1、创建服务器和端口
 * 2、准备数据
 * 3、打包数据及发送的位置
 * 4、发送资源
 * 5、释放资源
 * @author Administrator
 */
import java.io.IOException;
import java.net.DatagramPacket;
import java.net.DatagramSocket;
import java.net.InetSocketAddress;

public class MyClient {
	public static void main(String[] args) throws IOException {
		//1、创建服务器+端口
		DatagramSocket client = new DatagramSocket(6666);
		//2、准备数据
		String msg = "udp编程";
		byte[] date = msg.getBytes();
		//3、打包数据及端口
		DatagramPacket packet = new DatagramPacket(date, msg.length(),
				new InetSocketAddress("localhost", 8888));
		//4、发送资源
		client.send(packet);
		//5、释放资源
		client.close();
	}
}

服务端:

package cn.woniux.udp;
/**
 * 服务端
 * 1、创建服务端
 * 2、准备接受容器
 * 3、封装成包
 * 4、接受数据
 * 5、分析数据,
 * 6、释放资源
 * 
 * @author Administrator
 */
import java.io.IOException;
import java.net.DatagramPacket;
import java.net.DatagramSocket;

public class MyServer {
	public static void main(String[] args) throws IOException {
		// 1、创建服务端+端口
		DatagramSocket server = new DatagramSocket(8888);
		// 2、准备接受容器
		byte[] containt = new byte[1024];
		// 3、封装成包
		DatagramPacket packte = new DatagramPacket(containt, containt.length);
		// 4、接受数据
		server.receive(packte);
		// 5、分析数据
		byte[] date = packte.getData();
		int len = packte.getLength();
		System.out.println(new String(date, 0, len));
		// 6、释放资源
		server.close();
	}
}

你可能感兴趣的:(网络协议)