java,UDP协议简单实现
//UDP协议简单实现-----Serverpackage UDP;import java.net.DatagramPacket; import java.net.DatagramSocket; import java.net.InetSocketAddress; import java.nio.ByteBuffer;public class UdpServer implements Runnable {private int port;public UdpServer(int port) {this.port = port;}public void run() {try {// listening at port for udp requestDatagramSocket server = new DatagramSocket(new InetSocketAddress(port));byte[] bs = new byte[4];ByteBuffer bbuf = null;DatagramPacket data = new DatagramPacket(bs, bs.length);server.setSoTimeout(1000 * 10); // set timeoutwhile (true) { // 一直监听 server.receive(data);bbuf = ByteBuffer.wrap(bs, 0, 4);String s = "receive " + data.getData().length + " byte data,value: " + bbuf.getInt();System.out.println(s);}} catch (Exception e) {e.printStackTrace();}}public static void main(String[] args) {new Thread(new UdpServer(11111)).start();} }
//客户端实现;
package UDP;import java.net.DatagramPacket;import java.net.DatagramSocket;import java.net.InetSocketAddress;public class UdpClient implements Runnable {private int port;public UdpClient(int port) {this.port = port;}public void run() {try {DatagramSocket client = new DatagramSocket();byte[] bs = new byte[4];InetSocketAddress isa = new InetSocketAddress("localhost", port);DatagramPacket data = new DatagramPacket(bs, bs.length);data.setSocketAddress(isa);for (int i = 0; i < 10; i++) {data.setData(int2bytes(i));client.send(data);}} catch (Exception e) {e.printStackTrace();}}static byte[] int2bytes(int num) {byte[] b = new byte[4];for (int i = 0; i < 4; i++) {b[i] = (byte) (num >>> (24 - i * 8));}return b;}}
//测试代码;
package UDP;public class Test {public static void main(String[] args) throws InterruptedException {int port = 11111;try{new Thread(new UdpServer(port)).start();new Thread(new UdpClient(port)).start();}catch(Exception e){//e.printStackTrace(); }} }
转载于:https://www.cnblogs.com/qianyukun/p/4308785.html
java,UDP协议简单实现相关推荐
- Java UDP协议传输
使用UDP协议编写一个网络程序,设置接收端程序的监听端口是8001,发送端发送的数据是"Hello, world''. 接收端: 1 import java.net.*; 2 public ...
- java udp 协议_网络协议 - UDP 协议详解
¶ 网络协议 - UDP 协议详解 基于TCP和UDP的协议非常广泛,所以也有必要对UDP协议进行详解.@pdai ¶ UDP概述 UDP(User Datagram Protocol)即用户数据报协 ...
- 计算机网络-UDP协议
目录 1 概述 2 UDP的主要特点 3 UDP的首部格式 3.1 传输关系 3.2 首部格式 3.3 UDP 基于端口的分用和复用 3.4 UDP校验 1 概述 用户数据报协议(UDP,User D ...
- TCP和UDP协议的主要特点和应用场合
UDP的主要特点是: (1)传送数据前无需要建立连接,没有流量控制机制,数据到达后也无需确认. (2)不可靠交付,只有优先的的差错控制机制. (3)报文头部段,传输开销小,时延较短. 因此,UDP协议 ...
- java udp简单聊天程序_Java基于UDP协议实现简单的聊天室程序
最近比较闲,一直在抽空回顾一些java方面的技术应用. 今天没什么事做,基于udp协议,写了一个非常简单的聊天室程序. 现在的工作,很少用到socket,也算是对java网络编程方面的一个简单回忆. ...
- java udp 聊天室_Java基于UDP协议实现简单的聊天室程序
最近比较闲,一直在抽空回顾一些Java方面的技术应用. 今天没什么事做,基于UDP协议,写了一个非常简单的聊天室程序. 现在的工作,很少用到socket,也算是对Java网络编程方面的一个简单回忆. ...
- Java中UDP协议的基本原理和简单用法
UDP协议是非面向连接的,相对于TCP协议效率较高,但是不安全.UDP协议类似发信息的过程,不管接收方是在线还是关机状态,都会把信息发送出去.但是如果接收方不处于接收信息的状态,发送出去的数据包就会丢 ...
- 【Java网络编程(一)】IP地址、端口、URL、网络爬虫原理、TCP UDP协议
IP地址与域名的获取 package cn.hanquan.test;import java.net.InetAddress; import java.net.UnknownHostException ...
- JAVA socket编程 Datagram套接字 UDP协议(转)
查看文章 JAVA socket编程 Datagram套接字 UDP协议 2009-05-13 09:35 1 UDP套接字 数据报(Datagram)是网络层数据单元在介质上传输信息的一 ...
最新文章
- 为什么机器学习算法难以优化?一文详解算法优化内部机制
- 平时用电脑的一些技巧
- mysql三锁,mysql锁机制之表锁(三)
- Android SurfaceView的生命周期
- python获取原图GPS位置信息,轻松得到你的活动轨迹
- Java常用设计模式————外观模式
- IE浏览器整页截屏程序
- 云计算实战系列十四(MySQL基础)
- 被逼至“盗版合法化”,俄罗斯要把 RuTracker 放出来了?
- JavaScript提高:006:ASP.NET使用easyUI TABS标签updatepanel
- BestCoder Round #67 (div.2) N*M bulbs
- Java开发规范之常量定义篇
- ArcGIS Runtime SDK for Android 读取tpk、vtpk
- springboot 结合 ice(飞冰) 实现上传功能
- 无法识别服务器硬件信息,请教:无法获取服务器硬件信息
- cdr怎么把矩形去掉一个边_cdr画矩形怎么把中间弄掉
- alert angularjs
- Windows下常用网络命令
- 作为父亲,给儿子留下些什么? | 黄华书房
- 网络安全-Kali更新源(APT)
热门文章
- 史上最轻量K8s发行版,赋能边缘计算
- MySQL中的行级锁,表级锁,页级锁
- Google MapReduce有啥巧妙优化?
- 不是技术也能看懂容器技术与容器平台
- 多线程:同步和异步的优缺点比较
- Java 洛谷 P1482 Cantor表(升级版)
- 数据结构-冒泡排序最优代码(C语言)
- cvid matlab,WAKE-WIN10-SOFT-软件-Matlab配置及工具箱
- 多角度对比数据中心常见的三种走线方式
- Interview:算法岗位面试—10.30上午上海某信息公司(偏图算法)技术面试之单链表反转、给定整型数组和目标值 二分法查找+下午上海某金融公司(AI岗位,上市)CTO和主管技术面试之Xcepti