- 1、本文档共101页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
-*- 5. 处理接收到的数据 String received=new String(packet.getData(),0); System.out.println(received); 数据报套接字首先是强调发送方和接收方的区别,同时也指出服务器和客户之间的不同: 一个客户机必须事先知道服务器的地址和端口,以便进行出事连接 一个服务器从它接收到的数据报文中读取客户端的地址和端口. -*- 数据报Datagram通讯 建立数据报socket(); 建立一个报文包packet 等待请求报文 建立数据报socket 建立一个请求包 发出请求 获得对方地址 构成信息包 发送出去 创建接收包 等待接收 -*- 例: 基于UDP的简单的Client/Server程序设计 客户端程序 QuoteClient.java 服务器端程序 QuoteServer.java 程序QuoteServerThread.java -*- 可以看出使用UDP和使用TCP在程序上还是有很大的区别的。 一个比较明显的区别是,UDP的Socket编程是不提供监听功能的,也就是说通信双方更为平等,面对的接口是完全一样的。但是为了用UDP实现C/S结构,在使用UDP时可以使用DatagramSocket.receive()来实现类似于监听的功能。因为receive()是阻塞的函数,当它返回时,缓冲区里已经填满了接受到的一个数据报,并且可以从该数据报得到发送方的各种信息,这一点跟accept()是很相象的,因而可以根据读入的数据报来决定下一步的动作,这就达到了跟网络监听相似的效果。 -*- IP协议是一个无连接、不可靠的协议 域名是由一串用点分隔的名字组成的Internet上某一台计算机或计算机组的名称 DNS(Domain Name Server)是进行域名解析的服务器 URL(Uniform Resource Locator)是一致资源定位器的简称 URL的组成:协议名://机器名+端口号+文件名+内部引用 URLConnection是一个抽象类,代表与URL指定的数据源的动态连接 网络上的两个程序通过Socket实现双向通讯和数据交换 Java提供了两个类Socket和ServerSocket,分别用来表示双向连接的客户端和服务端 在创建Socket或ServerSocket是必须捕获或抛出异常 在Socket对象使用完毕时,要将其关闭,并且遵循一定的关闭次序 小结 -*- 网络编程步骤总结 基于TCP的socket编程 服务器程序编写: ①调用ServerSocket(int port)创建一个服务器端套接字,并绑定到指定端口上; ②调用accept(),监听连接请求,如果客户端请求连接,则接受连接,返回通信套接字。 ③调用Socket类的getOutputStream()和getInputStream获取输出流和输入流,开始网络数据的发送和接收。 ④最后关闭通信套接字。 客户端程序编写: ①调用Socket()创建一个流套接字,并连接到服务器端; ②调用Socket类的getOutputStream()和getInputStream获取输出流和输入流,开始网络数据的发送和接收。 ③最后关闭通信套接字。 -*- ` 基于UDP的socket编程 接收端程序编写: ①调用DatagramSocket(int port)创建一个数据报套接字,并绑定到指定端口上; ②调用DatagramPacket(byte[] buf, int length),建立一个字节数组以接收UDP包 。 ③调用DatagramSocket类的receive(),接收UDP包。 ④最后关闭数据报套接字。 发送端程序编写: ①调用DatagramSocket()创建一个数据报套接字; ②调用DatagramPacket(byte[] buf, int offset, int length, InetAddress address, int port),建立要发送的UDP包。 ③调用DatagramSocket类的send(),发送UDP包。 ④最后关闭数据报套接字。 谢 谢! -*- step4 ——通过输入流和输出流执行双向通讯 对于输出流,使用BufferedReader类的方法: read() 读取得一个字符或数组的一个元素 readln() 读取一整行 当连接中断或读到行尾时返回为NULL println() 输出结果 对于输入流,使用PrintStream类的方法 print() println() BufferedReader stdin = new BufferedReader( new InputStr
您可能关注的文档
- 优·第1章 计算机基础篇 03版.ppt
- 优·第1章 计算机基础知识.ppt
- 优·第1章 计算机网络基础.ppt
- 优·第1章 制图的基本知识1.ppt
- 优·第1章气体.ppt
- 优·第02章 热力学第一定律 2008-09-04.ppt
- 优·第02章 药物的杂质检查.ppt
- 优·第02章--多相多组分系统热力学--习题及.doc
- 优·第2讲 生命物质与健康.ppt
- 优·第2讲 引脚功能.ppt
- 2025年重庆市广元市选调生考试(行政职业能力测验)综合能力题库最新.docx
- 2025年重庆城市职业学院单招(语文)测试模拟题库有答案.docx
- 2025年重庆市德阳市行政职业能力测验模拟试题及答案一套.docx
- 2025年重庆工业职业技术学院单招语文测试模拟题库及完整答案1套.docx
- 2025年重庆市德阳市选调生考试(行政职业能力测验)综合能力题库最新.docx
- 2025年重庆市广元市行政职业能力测验题库1套.docx
- 2025年重庆工信职业学院单招(语文)测试模拟题库参考答案.docx
- 2025年重庆市泸州市单招语文测试模拟题库有答案.docx
- 2025年重庆市成都市行政职业能力测验题库必考题.docx
- 2025年重庆市巴中地区行政职业能力测验模拟试题带答案.docx
最近下载
- 摩托罗拉XiR_M3688_ServerManual维修手册.pdf VIP
- 奥西替尼杂质研究总结.pdf VIP
- 2024《格兰仕电器公司成本管理问题调查研究》8600字.docx VIP
- 中小学英语教师语音语调训练.ppt
- 《严格规范涉企行政检查》知识培训.pptx VIP
- MODS(多器官功能障碍综合征).ppt VIP
- 高中政治统编版必修一:(综合探究二)方向决定道路 道路决定命运.pptx
- VW75210-2 2011 (LV216-2) CN-电动汽车的高压屏蔽电缆要求和试验.pdf VIP
- 2022版小学《体育与健康课程标准》考试复习题库资料(含答案).pdf VIP
- 人工智能在邮政业的应用前景.pptx VIP
文档评论(0)