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

Java程序设计 教学课件 ppt 作者 陈锐 第15章 Java网络编程

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

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

Java程序设计 教学课件 ppt 作者 陈锐 第15章 Java网络编程

第十五章 Java网络编程,15.1 网络编程的基本概念 15.2 基于URL的Java网络编程 15.3 基于套接字的Java网络编程 15.4 数据报,第15章 Java网络编程,15.1 网络编程的基本概念,Java语言的网络功能是由类库中的java.net包实现的。它通过扩充I/O流来支持TCP/IP协议,同时它提供对其他协议的支持,如FTP,HTTP和WWW等。,15.1.1 网络基础知识,计算机网络形式多样,内容繁杂。网络上的计算机要互相通信,必须遵循一定的协议。目前使用最广泛的网络协议是Internet上所使用的TCP/IP协议。 TCP/IP协议即传输控制协议/互联网络协议(Transmission Control Protocol/Internet Protocol),它是Internet最基本的协议,简单地说,就是由底层的IP协议和TCP协议组成的。,15.1.1 网络基础知识,网络编程的目的就是指直接或间接地通过网络协议与其他计算机进行通信。网络编程中有两个主要的问题,一个是如何准确的定位网络上一台或多台主机,另一个就是找到主机后如何可靠、高效地进行数据传输。,15.1.1 网络基础知识,目前较为流行的网络编程模型是客户机/服务器(C/S)结构。即通信双方一方作为服务器等待客户提出请求并予以响应。客户则在需要服务时向服务器提出申请。服务器一般作为守护进程始终运行,监听网络端口,一旦有客户请求,就会启动一个服务进程来响应该客户,同时自己继续监听服务端口,使后来的客户也能及时得到服务。,15.1.2 网络基本概念,IP地址:即给每个连接在Internet上的主机分配一个在全世界范围唯一的32bit地址。IP地址的结构使我们可以在Internet上很方便地寻址。IP地址通常用更直观的、以圆点分隔号的4个十进制数字表示,每一个数字对应于8个二进制的比特串。 例如,北京大学的域名是pku.edu.cn,对应的IP地址为:162.105.129.30。,15.1.2 网络基本概念,主机名(HostName):网络地址的助记名,按照域名进行分级管理。例如: 洪恩主页为www.hongen.com 新浪主页为www.sina.com.cn 端口号(Port Number):网络通信时同一机器上的不同进程的标识。例如: 80,21,23,25,其中11024为系统保留的端口号。,15.1.2 网络基本概念,服务类型(Service):网络的各种服务。例如:超文本传输协议(HTTP),文件传输协议(FTP),远程登录(Telnet),简单邮件传输协议(SMTP)。 为了更加形象地表示以上几个概念,我们可以用如图15-1所示来描述:,15.1.2 网络基本概念,通常一台主机上总是有很多个进程需要网络资源进行网络通信。网络通信的对象准确地讲不是主机,而应该是主机中运行的进程。这时候光有主机名或IP地址来标识这么多个进程显然是不够的。端口号就是为了在一台主机上提供更多的网络资源而采取的一种手段,也是TCP层提供的一种机制。只有通过主机名或IP地址和端口号的组合才能唯一地确定网络通信中的对象进程。,15.1.2 网络基本概念,服务类型是在TCP层上面的应用层的概念。基于TCP/IP协议可以构建出各种复杂的应用,服务类型是那些已经被标准化了的应用,一般都是网络服务器(软件)。读者可以编写自己的基于网络的服务器,但都不能被称作标准的服务类型。,15.2 基于URL的Java网络编程,Internet资源类型(scheme):指出WWW客户程序用来操作的工具。如“http:/”表示WWW服务器,“ftp:/”表示FTP服务器,“gopher:/”表示Gopher服务器,而“new:”表示Newgroup新闻组。 服务器地址(host):指出WWW页所在的服务器域名。 端口(port):对某些资源的访问来说,需给出相应的服务器提供端口号。 路径(path):指明服务器上某资源的位置(其格式与DOS系统中的格式一样,通常有目录/子目录/文件名这样结构组成)。与端口一样,路径并非总是需要的。,15.2.1 URL类,为了使用URL进行通信,java.net中实现了URL类。我们可以通过下面的构造方法来初始化一个URL对象: public URL(String spec); 该方法通过一个表示URL地址的字符串可以构造一个URL对象。例如: URL myurl=new URL(“http:/www.hongen.com/“);,15.2.1 URL类,public URL(String protocol, String host, String file); 这个构造方法中制定了协议名“protocol”、主机名“host”、文件名“file”,端口使用缺省值。例如: URL myurl=new URL(“http“, “www.hongen.com“, “/pages/index.html“);,15.2.1 URL类,public URL(URL context, String spec); 该方法通过基URL和相对URL构造一个URL对象。例如: URL myurl=new URL(“http:/www.163.net/“); URL myurl_new=new URL(myurl, “index.html“),15.2.1 URL类,public URL(String protocol, String host, int port, String file); 该构造方法与(2)构造方法比较中多了一个端口号“port”,例如: URL gamelan=new URL(“http“, “www.gamelan.com“, 80, “Pages/Gamelan.network.html“); 注意:类URL的构造方法都声明抛弃非运行时例外(MalformedURLException),因此生成URL对象时,必须要对这一例外进行处理,通常用try-catch语句进行捕获。,15.2.1 URL类,一个URL对象生成后,其属性是不能被改变的,但是我们可以通过类URL所提供的方法来获取这些属性: public String getProtocol() 获取该URL的协议名。 public String getHost() 获取该URL的主机名。 public int getPort() 获取该URL的端口号,如果没有设置端口,返回-1。 public String getFile() 获取该URL的文件名。 public String getRef() 获取该URL在文件中的相对位置。,15.2.1 URL类,public String getQuery() 获取该URL的查询信息。 public String getPath() 获取该URL的路径。 public String getAuthority() 获取该URL的权限信息。 public String getUserInfo() 获得使用者的信息。 public String getRef() 获得该URL的锚。,15.2.2 URLConnetction类,通过URL的方法openStream(),我们只能从网络上读取数据,如果我们同时还想输出数据,例如向服务器端的CGI程序发送一些数据,我们必须先与URL建立连接,然后才能对其进行读写,这时就要用到URLConnection类了。CGI是公共网关接口(Common Gateway Interface)的简称,它是用户浏览器和服务器端的应用程序进行连接的接口。 URLConnection类也在包java.net中定义,它表示Java程序和URL在网络上的通信连接。当与一个URL建立连接时,首先要在一个URL对象上通过方法openConnection()生成对应的URLConnection对象。,15.2.2 URLConnetction类,例如下面的程序段首先生成一个指向地址http:/new.sohu.com/inde x.html的对象,然后用openConnection()打开该URL对象上的一个连接,返回一个URLConnection对象。如果连接过程失败,将产生IOException。 Try URL netchinaren = new URL (“http:/new.sohu.com/index.html“); URLConnectonn tc = netchinaren.openConnection(); catch(MalformedURLException e) /创建URL()对象失败 catch (IOException e) /openConnection()失败 ,15.3 基于套接字的Java网络编程,网络上的两个程序通过一个双向的通信连接实现数据的交换,这个双向链路的一端称为一个套接字(Socket)。套接字通常用来实现客户方和服务方的连接。套接字是TCP/IP协议的一个十分流行的编程界面,一个套接字由一个IP地址和一个端口号唯一确定。 在传统的UNIX环境下可以操作TCP/IP协议的接口不止套接字一个,套接字所支持的协议种类也不光TCP/IP一种,因此两者之间是没有必然联系的。在Java环境下,套接字编程主要是指基于TCP/IP协议的网络编程。,15.3 基于套接字的Java网络编程,Java在包java.net中提供了两个类Socket和ServerSocket,分别用来表示双向连接的客户端和服务端。 客户端的Socket 客户端的程序使用Socket类建立服务器的套接字连接。Socket常用的构造方法如下:,15.3 基于套接字的Java网络编程,Socket(InetAddress address, int port); Socket(InetAddress address, int port, boolean stream); Socket(String host, int prot); Socket(String host, int prot, boolean stream); Socket(SocketImpl impl); Socket(String host, int port, InetAddress localAddr, int localPort); Socket(InetAddress address, int port, InetAddress localAddr, int localPort);,15.3 基于套接字的Java网络编程,其中address、host和port分别是双向连接中另一方的IP地址、主机名和端口号,stream指明Socket是流Socket还是数据报Socket,localPort表示本地主机的端口号,localAddr和bindAddr是本地机器的地址(ServerSocket的主机地址),impl是Socket的父类,既可以用来创建ServerSocket,又可以用来创建Socket。count则表示服务端所能支持的最大连接数。,15.3 基于套接字的Java网络编程,当建立Socket时可能发生IOException异常,因此应像下面那样建立到服务器的套接字连接。例如: try Socket client = new Socket(“127.0.0.1“, 80); ServerSocket server = new ServerSocket(80); catch(IOException e) ,15.3 基于套接字的Java网络编程,服务器端的ServerSocket 我们已经知道客户负责建立客户到服务器的套接字连接,因此服务器必须建立一个等待接受客户的套接字的ServerSocket对象。ServerSocket的构造方法是: ServerSocket(int

注意事项

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

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




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