| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> 网络协议 -> 二十七、JavaUDP协议的通信程序 -> 正文阅读 |
|
[网络协议]二十七、JavaUDP协议的通信程序 |
1.什么是UDP,它的优缺点是什么?UDP:用户数据报协议[无连接的协议] 缺点:不能保证数据的安全与可靠。 优点:消耗小,效率高 2.建立基于UDP的网络通讯程序需要使用的类和常用方法基于UDP的网络通讯程序是不区分客户端和服务器。 1.java.net.DatagramPacket该类表示数据报包。【打包被发送的数据/接收发来的数据】 构造方法: DatagramPacket(byte[]?buf, int?length) 构造一个 DatagramPacket用于接收长度的数据包length。【接收发来的数据的数据包】 DatagramPacket(byte[]?buf, int?length, InetAddress?address, int?port) 构造用于发送长度的分组的数据报包 length指定主机上到指定的端口号。 【打包被发送的数据】 实例方法: byte[] getData() 返回数据缓冲区。 int getLength() 返回要发送的数据的长度或接收到的数据的长度。 InetAddress getAddress() 返回该数据报发送或接收数据报的计算机的IP地址。 int getPort() 返回发送数据报的远程主机上的端口号,或从中接收数据报的端口号。 2)java.net.DatagramSocket此类表示用于发送和接收数据报数据包的套接字。 构造方法 DatagramSocket() 构造数据报套接字并将其绑定到本地主机上的任何可用端口。【发包】 DatagramSocket(int?port) 构造数据报套接字并将其绑定到本地主机上的指定端口。【收包】 实例方法 void send(DatagramPacket?p) 从此套接字发送数据报包。 void receive(DatagramPacket?p) 从此套接字接收数据报包。 void close() 关闭此数据报套接字。 3.基于UDP协议的通讯程序创建步骤1) 发送放的步骤 (1) ?将需要发送的数据通过DatagreamPacket(byte[] byte,int len,IntAddress address,int port)构造方法打包好 (2) 通过DatagramSocket的构造方法创建DatagramSocket对象 (3) DatagramSocket对象的send方法打包好的数据包,发送。 (4) 关闭DatagramScoket。 2)接收方的步骤 (1)通过DatagramSocket(int port)创建接收的数据的DatagramSocket对象。 (2) 通过DatagramPacket(byte[] buf,int length)创建一个空的数据包。 (3) 通过调用接收数据的DatagramSocket对象的receive方法接收数据报包到空的数据报包中。 (4)解析数据报包 (5)关闭DatagramScoket 发送端类
服务端类
无奈源于不够强大 ? |
|
网络协议 最新文章 |
使用Easyswoole 搭建简单的Websoket服务 |
常见的数据通信方式有哪些? |
Openssl 1024bit RSA算法---公私钥获取和处 |
HTTPS协议的密钥交换流程 |
《小白WEB安全入门》03. 漏洞篇 |
HttpRunner4.x 安装与使用 |
2021-07-04 |
手写RPC学习笔记 |
K8S高可用版本部署 |
mySQL计算IP地址范围 |
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 | -2024/11/26 9:57:18- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |