- 1、本文档共13页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
Socket基础培训
* __________实习生培训资料 __________实习生培训资料 __________实习生培训资料 __________实习生培训资料 __________实习生培训资料 __________实习生培训资料 __________实习生培训资料 __________实习生培训资料 __________实习生培训资料 __________实习生培训资料 __________实习生培训资料 实习生培训资料 --------Socket基础 华大天元 (北京)电力科技有限公司 目录 套接字(Socket) API 常见异常出现原因整理 单元测试工具Junit Eclipse常用设置 socket API 概念模型 Java Datagram Socket API Java为datagram socket API提供两个类 : 针对socket的 DatagramSocket. 针对数据包交换的 DatagramPacket. 程序流 1。创建数据报socket并绑定它到一个本地端口 2。放置数据在byte数组里 3。创建数据报包,指定数据数组以及接受者地址 4。用数据包的引用激活socket的send方法 1。创建数据报socket并绑定它到一个本地端口 2。创建byte数组接收数据 3。创建数据报包,指定数据数组 4。用数据包的引用激活socket的receive方法 发送者 接收者 关键方法和构造函数 流模式 Socket API Java中,流模式 Socket API 由两个类提供: ServerSocket: 用于接受连接; 这个类的对象称为连接socket. Socket: 用于数据交换; 它的对象称为数据 socket. 服务器端 服务器进程建立一个连接socket,监听来自于其它进程的连接请求,每次只接受一个连接请求 服务器进程通过数据socket从数据流读取数据或向其中写入数据 一旦两个进程通讯会话结束,数据socket关闭,服务器可以通过连接socket自由接收下一个连接请求 客户端 客户创建一个数据socket 通过连接socket向服务器发送请求 一旦请求被接受,客户则可以向流中读取或者写入数据 进程通讯结束,数据socket关闭 ServerSocket 类的主要方法 注意: Accept 是一个阻塞操作. Socket 类的关键方法 read操作是阻塞的. 常见异常整理 java.net.BindException:Address?already?in?use:?JVM_Bind java.net.ConnectException:?Connection?refused:?connect java.net.SocketException:?Socket?is?closed java.net.SocketException:Connection?reset Eclipse使用 常用设置 编码设置 注释格式设置 代码格式设置 * 提供了称为 socket的编程结构. 进程想要通讯,必须创建这个实例 进程通过socket实例进行数据发送与接受 * * 为了发送数据包给一个进程, 进程: 创建一个对象用于描述数据包自己. 这个对象可以通过实例化 DatagramPacket 获得 (i) 有效数据表示为对byte 数组的引用, (ii) 目的地址 (接收socket可以绑定的主机 ID 和端口号). 在DatagramSocket 对象中提出一个调用, 确定DatagramPacket 的引用作为实参 在接收过程中, DatagramSocket 对象也必须实例化且绑定到一个本地端口,端口号必须同发送者数据包中的端口号一致. 为了接受数据包, 进程创建一个 datagramPacket 对象,它描述指向一个 byte数组且调用它的DatagramSocket 对象中的 receive 方法,确定DatagramPacket 的引用作为实参. * * * * * __________实习生培训资料 __________实习生培训资料 __________实习生培训资料 __________实习生培训资料 __________实习生培训资料 __________实习生培训资料 __________实习生培训资料 __________实习生培训资料 __________实习生培训资料 __________实习生培训资料 __________实习生培训资料 * 提供了称为 socket的编程结构. 进程想要通讯,必须创建这个实例 进程通过socket实例进行数据发送与接受 * * 为了发送数据包给一个进程, 进程:
文档评论(0)