电子文档交易市场
安卓APP | ios版本
电子文档交易市场
安卓APP | ios版本
换一换
首页 金锄头文库 > 资源分类 > PPT文档下载
分享到微信 分享到微博 分享到QQ空间

Java程序设计技术第12章 Java的网络功能(第二版)

  • 资源ID:34185742       资源大小:1.33MB        全文页数:30页
  • 资源格式: PPT        下载积分:10金贝
快捷下载 游客一键下载
账号登录下载
微信登录下载
三方登录下载: 微信开放平台登录   支付宝登录   QQ登录  
二维码
微信扫一扫登录
下载资源需要10金贝
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
如填写123,账号就是123,密码也是123。
支付方式: 支付宝    微信支付   
验证码:   换一换

 
账号:
密码:
验证码:   换一换
  忘记密码?
    
1、金锄头文库是“C2C”交易模式,即卖家上传的文档直接由买家下载,本站只是中间服务平台,本站所有文档下载所得的收益全部归上传人(卖家)所有,作为网络服务商,若您的权利被侵害请及时联系右侧客服;
2、如你看到网页展示的文档有jinchutou.com水印,是因预览和防盗链等技术需要对部份页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有jinchutou.com水印标识,下载后原文更清晰;
3、所有的PPT和DOC文档都被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;下载前须认真查看,确认无误后再购买;
4、文档大部份都是可以预览的,金锄头文库作为内容存储提供商,无法对各卖家所售文档的真实性、完整性、准确性以及专业性等问题提供审核和保证,请慎重购买;
5、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据;
6、如果您还有什么不清楚的或需要我们协助,可以点击右侧栏的客服。
下载须知 | 常见问题汇总

Java程序设计技术第12章 Java的网络功能(第二版)

第12章 Java的网络功能,概述,TCP/IP(Transmission Control Protocol/Internet Protocol,传输控制协议/网间协议)包括五个层次:应用层、传输层、网络层、链路层、物理层 ISO/OSI网络参考模型包括七个层次:应用层、表示层、会话层、传输层、网络层、链路层、物理层,概述,IP地址 网络中的硬件资源标识 是一个32位的整数,通常以“%d.%d.%d.%d”的形式表示,每个d是一个8位整数 端口号(port)标记机器的逻辑通信信道的正整数,不是物理实体一个16位的整数表达,其范围为065535,其中01023为系统所保留 Socket(套接字) 网络上运行的程序之间双向通信链路的最后终结点,是TCP和UDP的基础,概述,TCP协议具有可靠性和有序性,并且以字节流的方式发送数据,它通常被称为流通信协议。端点与端点之间建立持续的连接 当对所传输的数据具有时序性和可靠性等要求时,应使用TCP协议 用户数据报协议UDP 一种无连接的传输协议 需要将传输的数据定义成数据报(Datagram),在数据报中指明数据所要达到的端点(Socket,主机地址和端口号),再将数据报发送出去当传输的数据比较简单、对时序等无要求时应使用UDP协议,Java的网络功能,按层次及使用方法分为四大类 InetAddress面向IP层,用于标识网络上的硬件资源URL 面向应用层,可以通过URL的网络资源表达形式确定数据在网络中的位置Socket 面向传输层,使用的是TCP协议 Datagram 面向传输层,使用的是UDP协议,是另一种网络传输方式,它把数据的目的地记录在数据包中,然后直接放在网络上,java.net主要的类及例外,使用InetAddress,构造一个InetAddress实例没有构造函数,因此不能用new来构造,public static InetAddress getByName(String host); public static InetAddress getLocalHost(); public static InetAddress getAllByName(String host),host可以是一台机器名,也可以是一个形如“%d.%d.%d.%d”的IP地址或一个DSN域名。,InetAddress类主要方法,public byte getAddress()获得本对象的IP地址(存放在字节数组中)public String getHostAddress()获得本对象的IP地址“%d.%d.%d.%d”public String getHostName()获得本对象的机器名,程序12-1,演示Java如何根据域名自动到DNS(域名服务)上查找IP地址 程序12-1 执行GetIP后,可以得到下列信息: www.nankai.edu.cn/202.113.16.33 获取本机的IP地址 例12-1,本机名称和地址,统一资源定位器,URL是Uniform Resource Locator(统一资源定位器)的缩写,它表示Internet上某一资源的地址 nternet上的资源包括HTML文件、图象文件、声音文件、动画文件以及其他任何内容URL包括两部分内容 协议名称和资源名称,中间用冒号隔开,Protocol: resourceName,URL的具体结构,protocol:/host_name:port_number/file_name/reference,protocol:用来指示所要获取资源的传输协议,如:http、ftp、gopher、file等host_name:用来指示资源所在的主机port_number:用来指示连接时所使用的通信端口号file_name:用来指示该资源在主机的完整文件名reference:指示资源中的某个特定位置,http:/www.nankai.edu.cnhttp:/java.sun.com:80/whitePaper/Javawhitepaper_1.htmlhttp:/www.abc.com:8080/java/network.html#UDP http:/www.neca.com/vmis/java.html,URL的构造方法,public URL(String spec) 将整个URL的名称直接以字符串的形式作为参数传入即可 public URL(URL context, String spec) 可以表示相对URL位置的定义 第一个参数设为null,那么它的作用就和第一种方式相同了,URL url1= new URL("http:/www.nankai.edu.cn");,URL host = new URL("file:/export/home/Java/image/"); URL aImage = new URL(host, getParameter("FILENAME");,URL的构造方法,public URL(String protocol, String host, String file) public URL(String protocol, String host, int port, String file) 直接指定每个域的内容,而不是直接给出一个字符串来表示。必须给出确定的传输协议、机器名称、文件名,或者加上端口号,比如以:http:/java.sun.com:80/whitePaper/Javawhitepaper_1.html为例,构造方式为:URL url3 = new URL("http","java.sun.com",80,"/whitePaper/Javawhitepaper_1.html");,与URL相关的异常,类URL的构造方法中都声明抛出非运行时异常MalformedURLException 查看示例12-1,获取URL对象属性,String getProtocol()获取传输协议String getHost()获取机器名称String getPort()获取通信端口号String getFile()获取资源文件名称String getRef()获取参考点下面的两个方法将URL对象的内容以字符串的形式来表示,它们的作用是相同的String toString()String toExternalForm(),程序12-2,程序12-2中创建了一个URL对象,然后输出其属性,读入URL数据,openStream()方法 读取一个URL对象所指定的资源。与指定的URL建立连接并返回一个InputStream对象程序 12-3 在命令行中指定一个合理的文件名,便可以显示出文件的内容,其功能类似于DOS中的type命令,Applet中网络通讯,在Applet中将URL和InetAddress联合使用来得到相关的IP地址1)通过类Applet的getCodeBase()方法获得提供它的主机的URL实例 2)利用类URL的getHost()方法得到主机名 3)利用类InetAddress的getByName()得到该主机的IP地址4)通过IP地址,就可以进行网络通信了,使用的协议包括TCP或是UDP。见例12-2,应用程序和URL资源之间进行交互,通过URLConnection类,可以在应用程序和URL资源之间进行交互,既可以从URL中读取数据,也可以向URL中发送数据 openStream()只能从网络上读取资源中的数据URLConnection中方法public URLConnection openConnection() public InputStream getInputStream() public OutputStream getOutputStream()例12-3 程序12-4,socket接口,在Java中,基于TCP协议实现网络通信的类有两个:在客户端的Socket类和在服务器端的ServerSocket类。SeverSocket类的功能是建立一个Sever,并通过accept()方法随时监听客户端的连接请求,类Socket方法,构造方法Socket的输入/输出流管理方法,Socket(InetAddress address,int port);Socket(InetAddress address,int port,boolean stream);Socket(String host,int port); Socket(String host,int port,boolean stream);,stream则表示该socket是否是支持流的socket,public InputStream getInputStream()public void shutdownInput() public OutputStream getOutputStream() public void shutdownOutput(),Socket的方法,关闭Socket的方法 设置/获取Socket数据的方法为,public void close() throws IOException,public InetAddress getInetAddress()public int getPort() public void setSoTimeout(int timeout),类ServerSocket方法,类ServerSocket的构造方法 其他方法,public ServerSocket(int port)public ServerSocket(int port, int backlog):支持指定数目的连接public ServerSocket(int port, int backlog, InetAddress bindAddr),public Socket accept():等待客户端的连接,socket的基本概念,建立连接当程序需要建立网络连接时,必须有一台机器运行一个程序,随时等候连接,而另一端的程序则对其发出连接请求,同电话系统类似 建立连接的过程 服务器端生成一个ServerSocket实例对象,随时监听客户端的连接请求 客户端生成一个Socket实例对象,并发出连接请求服务器端通过accept()方法接收到客户端的请求后,开辟一个接口与之进行连接,并生成所需的I/O数据流。通信都是通过一对InputStream和OutputStream进行的。通信结束后,两端分别关闭对应的Socket接口,socket的基本概念,连接地址当程序建立网络连接时,需要知道地址或主机名称。另外,网络连接还需要一个端口号 端口号 在两个程序连接之前,彼此之间必须达成一致,只有客户端和服务器端指定端口号一致时连接才会建立,网络连接模式,socket通信基本步骤,在服务器端指定一个用来等待连接的端口号,在客户端规定一个主机和端口号,从而在客户端和服务器端创建Socket/ServerSocket实例打开连接到Socket的输入/输出流利用输入/输出流,按照协议对Socket进行读/写操作关闭输入/输出流和Socket,socket通信程序设计,服务器端程序(程序 12-5)监听客户端应用程序建立连接的请求,并在连接建立后向客户端发送信息客户端程序 (程序12-6)用来与服务器端程序建立连接,并将服务器端送来的信息显示在标准输出上,Java编程综合实例,使用它可以进行BBS站点的登录。同时程序中应用了本章之前的绝大部分知识,包括基本数据操作、图形界面设计以及Applet程序的编写等代码如程序12-7所示 HTML文件,

注意事项

本文(Java程序设计技术第12章 Java的网络功能(第二版))为本站会员(飞***)主动上传,金锄头文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即阅读金锄头文库的“版权提示”【网址:https://www.jinchutou.com/h-59.html】,按提示上传提交保证函及证明材料,经审查核实后我们立即给予删除!

温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




关于金锄头网 - 版权申诉 - 免责声明 - 诚邀英才 - 联系我们
手机版 | 川公网安备 51140202000112号 | 经营许可证(蜀ICP备13022795号)
©2008-2016 by Sichuan Goldhoe Inc. All Rights Reserved.