3.UDP编程

来源:互联网 发布:深入理解linux内核pdf 编辑:程序博客网 时间:2024/05/01 11:06

UDP通信方式:以数据为中心,非面向连接,不安全,数据可能丢失,但是效率较高。
在java中的使用:
一·类DatagramSocket DatagramPacket
1.客户端
1)创建客户端 DatagramSocket类+指定端口
2)准备数据 字节数组
3)打包 DatagramaPacket+服务器地址与端口
4)发送
5)释放资源

2.服务器端
1)创建服务端 DatagramSocket类+指定端口
2)准备接受容器 字节数组 封装 DatagramPacket
3)包,接收数据
4)分析
5)释放资源

示例代码:

package Socket;import java.io.IOException;import java.net.DatagramPacket;import java.net.DatagramSocket;import java.net.InetSocketAddress;/** * udp编程 * Created by dd on 2016/6/8 0008. */public class demo05 {}//客户端class MyClient{    public static void main(String[] args) throws IOException {        //创建客户端加端口        DatagramSocket client = new DatagramSocket(6666);        //准备数据        String msg = "ksclove my1008";        byte[] bytes = msg.getBytes();        //打包(发送的地点与端口)        DatagramPacket packet = new DatagramPacket(bytes, bytes.length, new InetSocketAddress("localhost", 8888));        //发送        client.send(packet);        //释放资源        client.close();    }}//服务端class MyServer{    public static void main(String[] args) throws IOException {        //创建服务端+端口        DatagramSocket server = new DatagramSocket(8888);        //准备接收容器        byte[] container = new byte[1024];        //打包容器        DatagramPacket packet = new DatagramPacket(container, container.length);        //接收数据        server.receive(packet);        //分析数据        byte[] data = packet.getData();        int length = packet.getLength();        System.out.println(new String(data,0,length));        //释放资源        server.close();    }}
0 0
原创粉丝点击