- 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第15讲 网络(二)
第15讲 网络(二) 本章内容 基于TCP/IP的编程的其它特性 基于UDP的Socket编程 基于HTTP协议的网络编程 InetAddress 获取InetAddress对象的属性 String getCanonicalHostName() 获取此IP地址的主机名 String getHostName() 测试是否可以达到该地址 boolean isReachable(int timeout) Socket选项 接收缓存区选项 socket.setReceiveBufferSize(4096); 发送缓存区选项 socket.setSendBufferSize(4096); 延时选项 socket.setSoLinger(true, 50); Socket异常 SocketException .SocketException表现了一种通用的套接字错误,它可以表现一定范围的特定错误条件。对于更细致的控制,应用程序应该捕捉它的子类。 BindException 表时没有能力把套接字绑定到某个本地端口,最普通的原因是本地端口已经被使用了。 ConnectException 当某个套接字不能连接到特定的远程主机和端口的时候,.ConnectException就会发生。 NoRouteToHostException 当由于出现网络错误,不能找到远程主机的路由的时候产生.NoRouteToHostException异常。它的起因可能是临时的网关或路由器问题,或者是套接字试图连接的远程网络故障。 InterruptedIOException 当某个读取操作被阻塞了一段时间引起网络超时的时候产生.InterruptedIOException异常,处理超时问题是使代码更加牢固和可靠的途径。 TCP/IP协议与UDP协议 TCP(Transmission Control Protocol,传输控制协议)是一种基于连接的通信协议。当两台计算机之间需要进行可靠的数据传输时,它们通过网络建立起一个稳定的连接,这种连接通常也被称为数据链。TCP协议通过信息校验能够保证接收方所接收到的数据和发送方所发送的数据在内容和顺序上是完全一致的,从而实现可靠传输。 UDP(User Datagram Protocol,用户数据包协议)不是一种基于稳定连接的通信协议。UDP协议将独立的数据包从一台计算机传输到另外一台计算机,但并不保证接收方能够接收到该数据包,也不保证接收方所接收到的数据和发送方所发送的数据在内容和顺序上是完全一致的。 TCP和UDP有各自的端口号。 数据报包DatagramSocket 创建接收的数据包 DatagramPacket(byte[] buf, int length) DatagramPacket(byte[] buf, int offset, int length) 创建发送数据包 DatagramPacket(byte[] buf, int length, InetAddress address, int port) DatagramPacket(byte[] buf, int offset, int length, InetAddress address, int port) 获得或修改数据包中数据的字节数 int getLength() void setLength(int length) 返回或修改一个字节数组,其中是数据包的数据 byte[] getData() void setData(byte[] buf) 数据报套接字DatagramSocket 用本地机上任何一个可用的端口创建一个套接字,这个端口号是由系统随机产生的。这个构造方法没有指定端口号,可以用在客户端。如果构造不成功则触发SocketException异常。 DatagramSocket() 用一个指定的端口号port创建一个套接字。 DatagramSocket(int port) 创建数据报套接字,将其绑定到指定的本地地址。 DatagramSocket(int port, InetAddress address) 关闭套接字 void close() 返回本地套接字的正在监听的端口号 int getLocalPort() 从网络上接收数据包并将其存储在DatagramPacket中,数据包的数据缓存区必须足够大,receive()把尽可能多的数据存放在数据包中,如果装不下,其余部分就会丢弃。 void receive(DatagramPacket dp) 发送数据包 void send(DatagramPacket dp) URL类 URL(Uniform Resource Locator)---
文档评论(0)