分类: android2011-11-10 10:07 848人阅读 评论(0) 收藏 举报

参考别人一幅原理图。

  1. import java.io.IOException;
  2. import java.net.DatagramPacket;
  3. import java.net.DatagramSocket;
  4. import java.net.InetAddress;
  5. public class UDPClient
  6. {
  7. private DatagramSocket client=null;
  8. private DatagramPacket packet=null;
  9. private InetAddress host=null;
  10. public static int portSend=8888;
  11. public static String name="192.168.142.199";
  12. public UDPClient()
  13. {
  14. try
  15. {
  16. host = InetAddress.getByName(name);
  17. client=new DatagramSocket();
  18. System.out.println("客户端准备就绪");
  19. } catch (Exception e)
  20. {
  21. e.printStackTrace();
  22. }
  23. }
  24. public void UDPClientRun(byte[] buffer) throws IOException
  25. {
  26. host = InetAddress.getByName(name);
  27. packet=new DatagramPacket(buffer,buffer.length, host, portSend);
  28. client.send(packet);
  29. System.out.println("客户端发送消息");
  30. }
  31. public void UDPClientStop()
  32. {
  33. client.close();
  34. }
  35. }
  1. import java.io.IOException;
  2. import java.net.DatagramPacket;
  3. import java.net.DatagramSocket;
  4. public class UDPService
  5. {
  6. private DatagramSocket server =null;
  7. private DatagramPacket dPacket=null;
  8. private byte[] buffer = new byte[640];
  9. public static int portServer=8888;
  10. public UDPService ()
  11. {
  12. try
  13. {
  14. server  = new DatagramSocket(portServer);
  15. dPacket = new DatagramPacket(buffer, buffer.length);
  16. } catch (Exception e)
  17. {
  18. e.printStackTrace();
  19. }
  20. }
  21. public byte[] UDPServiceRun()
  22. {
  23. try
  24. {
  25. server.receive(dPacket);
  26. System.out.println("服务端接收到消息");
  27. } catch (IOException e)
  28. {
  29. e.printStackTrace();
  30. System.out.println("服务端未收到消息");
  31. }
  32. return buffer;
  33. }
  34. public void UDPSeverStop()
  35. {
  36. server.close();
  37. }
  38. public String getClientName()
  39. {
  40. String name="";
  41. name=dPacket.getAddress().toString();
  42. return name;
  43. }
  44. }

UDP示例的更多相关文章

  1. Java Socket InetAddress类 Socket DatagramPacket TCP、UDP示例

    java.net :为实现网络应用程序提供类. InetAddress类 方法摘要 方法摘要 boolean equals(Object obj) : 将此对象与指定对象比较. byte[] getA ...

  2. Linux socket编程示例(最简单的TCP和UDP两个例子)

    一.socket编程 网络功能是Uinux/Linux的一个重要特点,有着悠久的历史,因此有一个非常固定的编程套路. 基于TCP的网络编程: 基于连接, 在交互过程中, 服务器和客户端要保持连接, 不 ...

  3. python前后台tcp/udp通讯示例

    以下代码兼容python2.7+.python3 TCP示例 服务器 -- sever_tcp.py #!/usr/bin/env python #coding=utf-8 import time i ...

  4. J2SE网络编程之 TCP与UDP

    1.什么是TCP TCP(Transmission Control Protocol传输控制协议)是一种面向连接的.可靠的.基于字节流的通信协议,位于传输层.这三个特点中,面向连接就如同打电话,双方的 ...

  5. JAVA NIO工作原理及代码示例

    简介:本文主要介绍了JAVA NIO中的Buffer, Channel, Selector的工作原理以及使用它们的若干注意事项,最后是利用它们实现服务器和客户端通信的代码实例. 欢迎探讨,如有错误敬请 ...

  6. 基于udp的套接字编程

    一,简单明了了解udp套接字编程 客户端: #Author : Kelvin #Date : 2019/1/30 11:07 from socket import * ip_conf=("1 ...

  7. Netty实战十三之使用UDP广播事件

    1.UDP的基础知识 我们将会把重点放在一个无连接协议即用户数据报协议(UDP)上,它通常用在性能至关重要并且能够容忍一定的数据报丢失的情况下. 面向连接的传输(如TCP)管理了两个网络端点之间的连接 ...

  8. Java学习笔记52(网络编程:UDP协议案例)

    InetAddress类: 表示互联网中的IP地址,示例: package demo; import java.net.InetAddress; import java.net.UnknownHost ...

  9. Netty 框架学习 —— UDP 广播

    UDP 广播 面向连接的传输(如 TCP)管理两个网络端点之间的连接的建立,在连接的生命周期的有序和可靠的消息传输,以及最后,连接的有序终止.相比之下,类似 UDP 的无连接协议中则没有持久化连接的概 ...

随机推荐

  1. 爬虫框架Scrapy之Request/Response

    Request yield scrapy.Request(url, self.parse) Request 源码: # 部分代码 class Request(object_ref): def __in ...

  2. ”由于没有远程桌面授权服务器可以提供许可证,远程会话被中断“的解决方案

    由于windows server 2012 R2 Datacenter 安装了 远程桌面角色,但是这个角色是120天免费的,需要购买授权的. 解决方案: 删除这个角色,就可以正常进行远程桌面连接了.但 ...

  3. Huffuman Coding (哈夫曼编码)

    哈夫曼编码(Huffman Coding),又称霍夫曼编码,是一种编码方式,哈夫曼编码是可变字长编码(VLC)的一种.Huffman于1952年提出一种编码方法,该方法完全依据字符出现概率来构造异字头 ...

  4. 为什么我们选择parquet

    说明:此方案已经我们已经运行1年. 1.场景描述: 我们对客户登录日志做了数据仓库,但实际业务使用中有一些个共同点, A  需要关联维度表 B  最终仅取某个产品一段时间内的数据 C 只关注其中极少的 ...

  5. [spring]<context:property-placeholder/>

    问题: 有些参数在某些阶段中是常量,这些参数在不同阶段之间又往往需要改变,如: 在开发阶段我们连接数据库时的url,username,password等信息 分布式应用中client端的server地 ...

  6. Windows中使用wget整站下载

    weget wget安装 Windows下载 点击下载   https://eternallybored.org/misc/wget/ 会跳转到wget的下载页,根据自己电脑选择下载的文件,我下载的版 ...

  7. 解决:make:cc 命令未找到的解决方法

    安装Redis的时候报这个错误 原因:未安装gcc 解决方法:安装gcc 自动安装,包括依赖库[root@VM_220_111_centos redis-3.2.9]# yum -y install ...

  8. 解决Tomcat加载时报APR错的问题

    部署Tomcat的时候出现了如下错误, INFO: The APR based Apache Tomcat Native library which allows optimal performanc ...

  9. 【IIS转】:解决IIS下localhost访问需要输入用户名和密码的问题

    [摘要]安装完IIS后,我们可能会发现浏览器输入localhost访问时提示我们输入用户名和密码,本文介绍了这种问题的解决方法,方便站长们调试自己的程序. 在我们的WIN XP系统中安装了IIS,但是 ...

  10. 转:在Eclipse的Debug页签中设置虚拟机参数

    http://blog.csdn.net/decorator2015/article/details/50914479 在Eclipse的Debug页签中设置虚拟机参数 步骤 1,Run->De ...