java UDP

UDP 与 tcp 连接的 区别 以及  两者的不同

 

UDp

   1 面向的是无连接的网络方式  

   2 传输速度快 (但是容易发生丢包 )

   3 传输的数据的大小带有的限制 一般是在64k  范围内

tcp

   1 面向的有链接的网络方式

    2  传输速度相对较慢 

    3  传输范围的大小  一般是没有限制

java  使用 udp 连接的方式 

 

import java.net.*;

import java.io.*;

class UdpdemoSendMessage{

    public static void main(String args[]) throws Exception{

        System.out.println("Hello World!");

        

        // 创建udp         

        DatagramSocket  socket = new  DatagramSocket();

        InputStreamReader inputstremreader = new InputStreamReader(System.in);

        BufferedReader br = new BufferedReader(inputstremreader);

        String content = null;

        //堵塞 模式

       while((content = br.readLine())!=null){

            

           

            

            byte[] data = content.getBytes();

          创建一个数据包  并绑定 地址 以及 端口号

            DatagramPacket packet = new DatagramPacket(data,data.length,InetAddress.getByName("192.168.19.216"),10008);

            

            // 通过socket 服务 已有的数据包发送出去

            

            socket.send(packet);

       //

       }

        

        

        

    

        

    } 

}

 

 

public class receiveMessage {

 

public static void main(String[] args) throws Exception {

// TODO Auto-generated method stub

  System.out.println("start");

//       用于定义一个接收方  并进行端口号的绑定

        DatagramSocket socket = new DatagramSocket(10008);

        while(true){

        byte[] buf = new byte[1024];

        DatagramPacket packet = new DatagramPacket(buf,1024);

         

        socket.receive(packet);

         

         

        System.out.println("end");

        System.out.println(new String(buf,0,buf.length));

 

        InetAddress net  =InetAddress.getLocalHost();

         

        System.out.print(net.getHostName());

        System.out.println(net.getAddress());

       

        }

         

         

         

}

 

posted @ 2016-07-09 10:53  tiankongzhicheng  阅读(138)  评论(0编辑  收藏  举报