- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
Java程序设计基础与实践 第12章 网络编程
第12章 网络编程 TCP和UDP的概念 基于TCP协议的网络编程方法 基于UDP协议的网络编程方法 InetAddress类和URL类 12.1.1 TCP和UDP ⑴ TCP TCP的全称为Transmission Control Protocol,称为网络传输控制协议,主要负责数据的分组和重组,它与IP协议组合,称为TCP/IP。 ⑵ UDP UDP的全称为User Datagram Protocol,称为用户数据报协议,和TCP不同,UDP是一种非持续连接的通信协议,它不能保证数据能够正确抵达目标,而且多个数据包抵达目标的顺序可能与发送时的顺序不同。 12.1.2 InetAddress类 IP地址是每个计算机在网络中的唯一标识,要想进行网路通信,必须获得正确的IP地址。Java提供了IP地址的封装类InetAddress。 12.1.3 基于TCP协议的网络编程 ⑴ 创建服务器端套接字 服务器端套接字是ServerSocket类的实例对象,用于实现服务器程序,ServerSocket类监视指定的端口,并建立客户端到服务器端套接字的连接,也就是负责客户端的呼叫任务。 例如: try{ ServerSocket ss=new ServerSocket(1880); }catch(IOException e){} ⑵ 创建客户端套接字 客户端端套接字是Socket类的实例对象,用于实现客户端程序。 ⑶ 服务器端接受客户端请求 在服务器端利用其accept()方法接收客户端的套接字连接请求。 例如,上面创建的服务器端套接字ss接受客户端请求,代码如下: try{ mysocket =ss.accept(); }catch(IOException e){} ⑷ 客户端发送和接收服务器 Socket类提供了getInputStream ()方法和getOutStream()方法来接收和发送数据。 ⑸ 多客户的Client/Server程序设计 为了实现在服务器方给多个客户提供服务的功能,需要对上面的程序进行改造,利用多线程实现多客户机制。 12.1.4 基于UDP协议的网络编程 ⑴ DatagramPacket类 DatagramPacket类是UDP所传递的数据包,即打包数据。 ⑵ DatagramSocket类 DatagramSocket类是用于发送和接收数据的数据包套接字。 12.1.5 URL类 URL代表一个统一资源定位符,它是指向互联网“资源”的指针。 简单的可以把URL理解为包含协议、主机名、端口、路径、查询字符串和参数等对象,每一段可以独立设置。 * 方法 说明 getByName(String s) 获取指定主机的IP地址 getLocalhost() 返回本地主机的InetAddress对象 getHostName() 获取此主机名 getHostAddress() 获取此主机IP地址 isReachable(int timeout) 在timeout指定的毫秒时间内,测试IP地址是否可达 表12.1 InetAddress类常用方法 例如:获取域名为“”的网络IP地址等信息。 import .*; public class Test { public static void main(String[] args) { try {//使用InetAddress类要进行异常处理 InetAddress address=InetAddress.getByName(); String domainName=address.getHostName(); String ipName=address.getHostAddress(); InetAddress mine=address.getLocalHost(); System.out.println(domainName); System.out.println(ipName); System.out.println(mine.toString()); } catch (UnknownHostException e) { e.printStackTrace(); } } } 例如:一个简单的聊天室 客户端程序: import java.io.*; import .*; public class Student { //学生类 public static void main(String args[]) { try{ Socket socket=
您可能关注的文档
最近下载
- 2025最新七年级上学期课外文言文阅读专练十篇(及答案).docx VIP
- 合成生物学-全套PPT课件.pptx
- 精品解析:天津市河东区天津市第八中学2024-2025学年九年级上学期12月月考物理试题(原卷版).docx VIP
- 高标准农田建设项目投标技术服务承诺书.docx
- 精品解析:天津市河东区天津市第八中学2024-2025学年九年级上学期12月月考物理试题(解析版).docx VIP
- 回弹法检测混凝土强度专用测强曲线试验推定.pdf VIP
- 电机与拖动4.doc VIP
- 高标准农田建设项目 投标方案(技术方案).doc
- DB11_T 1219.3-2022 文物艺术品数据元规范 第3部分:陶瓷.pdf VIP
- JJF(津) 155-2025 注册计量师计量专业项目考核规范.pdf VIP
原创力文档


文档评论(0)