码迷,mamicode.com
首页 > 其他好文 > 详细

UDP 协议简单编程

时间:2015-02-05 11:42:30      阅读:164      评论:0      收藏:0      [点我收藏+]

标签:

  1. 最近温故一下工作没有使用过的一些知识点,下面就是练习中使用的代码,提供给大家分享

  2. 客户端


  3. // 客户端
    public class UDPClient {
    
    	public static void main(String[] args) throws IOException {
    		DatagramSocket ds = null;// 定义接受数据的对象
    		byte[] data = new byte[1024]; // 开辟空间,接受数据
    		DatagramPacket dp = null; // 声明DatagramPacket对象
    		// 服务器端和客户端的要一致
    		ds = new DatagramSocket(9000); // 端口号
    		dp = new DatagramPacket(data, 1024); // 所有信息使用data保存
    		ds.receive(dp); // 接受数据
    
    		// dp的内容信息
    		String str = new String(dp.getData(), 0, dp.getLength()) + " from "
    				+ dp.getAddress().getLocalHost() + ":" + dp.getPort();
    
    		System.out.println(str);// 输出内容
    	}
    }
  4. 服务器端


  5. // 服务端
    public class UDPServer {
    	public static void main(String[] args) throws IOException {
    		DatagramSocket ds = null;
    		DatagramPacket dp = null;
    
    		ds = new DatagramSocket(3000);
    		String str = "hello World!";
    		// 构造数据报包,用来将长度为 length 的包发送到指定主机上的指定端口号。
    		dp = new DatagramPacket(str.getBytes(), str.length(),
    				InetAddress.getByName("localhost"), 9000);
    
    		System.out.println("发送信息");
    		ds.send(dp); // 服务端发送消息
    		ds.close();
    	}
    }
  6. 总结

    1.UDP中主要使用的是数据报协议发送的。

    2.UDP是属于不可靠协议,服务器端发送的消息,客户端不一定能收的到。

    3.UDP主要使用DatagramPacket和DatagramSocket两个类。

    4.DatagramPacket主要用于封装消息。

    5.DatagramSocket用于发送和接受消息。

    7.注意

    运行的时候,需要先运行客户端,然后再运行服务器端。


UDP 协议简单编程

标签:

原文地址:http://my.oschina.net/u/263874/blog/375526

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!