- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
第3章UDP协议网络编程;UDP协议是无连接的协议,它以数据报作为数据传输的载体。数据报是一个在网络上发送的独立信息,它的到达、到达时间以及内容本身等都不能得到保证。数据报的大小是受限制的,每个数据报的大小限定在64KB以内。
UDP协议无需在发送方和接收方建立连接,但也可以先建立连接。数据报在网上可以以任何可能的路径传往目的地。
在Java中,基于UDP协议实现网络通信的类有三个:
用于表达通信数据的数据报类DatagramPacket
用于进行端到端通信的类DatagramSocket
用于组播通信的类MulticastSocket。;类DatagramPacket
构造方法
publicDatagramPacket(byte[]?buf,int?length)
publicDatagramPacket(byte[]?buf,int?offset,int?length):这两个方法用于接收数据
publicDatagramPacket(byte[]?buf,int?length,InetAddressaddress,int?port)
publicDatagramPacket(byte[]?buf,int?offset,int?length,InetAddress?address,int?port):这两个方法用于发送数据
获取数据——获取接收报中的信息
publicInetAddressgetAddress()
publicbyte[]getData()
publicintgetLength()
publicintgetOffset()
publicintgetPort()
设置数据——设置发送报中的信息
setAddress(InetAddress?iaddr)、setPort(int?iport)、setData(byte[]?buf)、setData(byte[]?buf,int?offset,int?length)、setLength(int?length);类DatagramSocket
构造方法
publicDatagramSocket()
publicDatagramSocket(int?port):在指定的端口通信
publicDatagramSocket(int?port,InetAddress?laddr):在指定的地点运行
这三个方法都将抛出例外SocketException,程序中需要捕获处理。
最主要的方法——发送与接收数据报
publicvoidreceive(DatagramPacket?p)
publicvoidsend(DatagramPacket?p)
这两个方法都将抛出例外IOException,程序中需要捕获处理。
其他方法
publicvoidconnect(InetAddress?address,int?port):与指定的机器通信
publicvoiddisconnect():关闭与指定机器的连接
publicvoidclose():关闭Socket;;SingleUDPClient.java;发送端发出数据报的标准步骤:
1.定义数据成员
DatagramSocketsocket;
DatagramPacketpacket;
InetAddressaddress;(用来存放接收方的地址)
intport;(用来存放接收方的端口号)
2.创立数据报Socket对象
try{
socket=newDatagramSocket(4445);
}e){}
socket绑定到一个本地的可用端口,等待接收客户的请求。;3.分配并填写数据缓冲区(一个字节类型的数组)
byte[]buf=newbyte[256];
存放从客户端接收的请求信息。
4.创立一个DatagramPacket
packet=newDatagramPacket(buf,256);
用来从socket接收数据,它只需要两个参数。
5.效劳器阻塞
socket.receive(packet);
在客户的请求数据报到来之前一直等待。;6.从到来的包中得到地址和端口号
InetAddressaddress=packet.getAddress();
intport=packet.getPort();
7.将数据送入缓冲区
或来自文件、或键盘输
您可能关注的文档
- 沪粤版《第二章-声音与环境》补充习题及答案.doc
- 洛浦县布亚乡中心小学乡村少年宫档案记录表.doc
- pep五年级英语下unit-3--part-A-Let's-learn.ppt
- 汽车无钥匙进入系统的研究背景及其意义.doc
- 泰兴市跃进东河贯通工程施工组织设计.doc
- 活动13我们的节日.doc
- 污水管道检查井工序报验.doc
- 沪教版七年级数学上册期末复习题.doc
- 沪科版八年级数学12.1-12.2一次函数测试.doc
- 汽修发动机测试题.doc
- 实验室危废随意倾倒查处规范.ppt
- 实验室危废废液处理设施规范.ppt
- 实验室危废处置应急管理规范.ppt
- 初中地理中考总复习精品教学课件课堂讲本 基础梳理篇 主题10 中国的地理差异 第20课时 中国的地理差异.ppt
- 初中地理中考总复习精品教学课件课堂讲本 基础梳理篇 主题10 中国的地理差异 第21课时 北方地区.ppt
- 危险废物处置人员防护培训办法.ppt
- 危险废物处置隐患排查技术指南.ppt
- 2026部编版小学数学二年级下册期末综合学业能力测试试卷(3套含答案解析).docx
- 危险废物处置违法案例分析汇编.ppt
- 2026部编版小学数学一年级下册期末综合学业能力测试试卷3套精选(含答案解析).docx
最近下载
- 设计单位质量检查报告.pdf VIP
- 2022年暨南大学公共课《马克思主义基本原理概论》期末试卷A(有答案).docx VIP
- 止水螺杆专项方案.docx VIP
- 2022年暨南大学公共课《马克思主义基本原理概论》期末试卷B(有答案).docx VIP
- 固定局部义齿的设计(口腔修复学).pptx
- 最新国家开放大学《老年生活照护》形考任务答案.docx VIP
- 2023年暨南大学公共课《马克思主义基本原理概论》期末试卷B(有答案).docx VIP
- 英语专四练习sublist 7 exercise with keys.pdf VIP
- 不一样的卡梅拉绘本系列6《我能打败怪兽》PPT课件.ppt VIP
- 高考英语各单元专练14.doc VIP
原创力文档


文档评论(0)