基于任务驱动模式的Java程序设计(西电版)第十章-网络编程课件.pptx
- 【下载声明】
1. 本站全部试题类文档,若标题没写含答案,则无答案;标题注明含答案的文档,主观题也可能无答案。请谨慎下单,一旦售出,不予退换。
2. 本站全部PPT文档均不含视频和音频,PPT中出现的音频或视频标识(或文字)仅表示流程,实际无音频或视频文件。请谨慎下单,一旦售出,不予退换。
3. 本页资料《基于任务驱动模式的Java程序设计(西电版)第十章-网络编程课件.pptx》由用户(晟晟文业)主动上传,其收益全归该用户。163文库仅提供信息存储空间,仅对该用户上传内容的表现方式做保护处理,对上传内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(点击联系客服),我们立即给予删除!
4. 请根据预览情况,自愿下载本文。本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
5. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007及以上版本和PDF阅读器,压缩文件请下载最新的WinRAR软件解压。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 任务 驱动 模式 Java 程序设计 西电版 第十 网络 编程 课件
- 资源描述:
-
1、高职高专“十二五”规划教材java网络编程java计算机网络是现代通信技术与计算机技术相结合的产物。所谓计算机网络,就是把分布在不同地理区域的计算机与专门的外部设备用通信线路互联成一个规模大、功能强的网络系统,从而使众多的计算机可以方便地互相传递信息,共享硬件、软件、数据信息等资源。通俗来说,网络就是通过电缆、电话线、或无线通信等互联的计算机的集合。通过网络,可以和其他联到网络上的用户一起共享网络资源,如磁盘上的文件及打印机、调制解调器等,也可以和他们互相交换数据信息。java网络时代数据的传输如图10.1所示。图10.1 网络时代数据的传输java那么,网络上的计算机之间又是如何交换信息的呢
2、?就像我们说话用某种语言一样,在网络上的各台计算机之间也有一种语言,这就是网络协议。不同的计算机之间必须使用相同的网络协议才能进行通信。当然,网络协议也有很多种,具体选择哪一种协议则要根据情况而定。Internet上的计算机使用的是TCP/IP协议。java目前较为流行的网络编程模型是客户机/服务器(C/S)结构。即通信双方的一方作为服务器等待客户提出请求并予以响应。客户则在需要服务时向服务器提出申请。服务器一般作为守护进程要始终运行,监听网络端口,一旦有客户请求,就会启动一个服务进程来响应该客户,同时自己继续监听服务端口,使后来的客户也能及时得到服务。java第一节 网络技术的基本概念jav
3、a传输控制协议/因特网互联协议(Transmission Control Protocol/Internet Protocol,TCP/IP),又名网络通信协议,是Internet最基本的协议、Internet国际互联网络的基础,由网络层的IP协议和传输层的TCP协议组成。TCP/IP定义了电子设备如何联入因特网,以及数据如何在它们之间传输的标准。协议采用了四层的层级结构,每一层都呼叫它的下一层所提供的协议来完成自己的需求。也就是说,TCP负责发现传输的问题,一有问题就发出信号,要求重新传输,直到所有数据安全正确地传输到目的地。而IP是给因特网的每一台联网设备规定一个地址。第一节 网络技术的基
4、本概念一、TCP/IP协议集合java尽管TCP/IP协议的名称中只有TCP这个协议名,但是在TCP/IP的传输层同时存在TCP和UDP两个协议。TCP是面向连接的通信协议,通过三次握手建立连接,通信完成时要拆除连接,由于TCP是面向连接的所以只能用于端到端的通信。TCP提供的是一种可靠的数据流服务,采用“带重传的肯定确认”技术来实现传输的可靠性。TCP还采用一种称为“滑动窗口”的方式进行流量控制,所谓窗口实际表示接收能力,用以限制发送方的发送速度。第一节 网络技术的基本概念java如果IP数据包中有已经封好的TCP数据包,那么IP将把它们向“上”传送到TCP层。TCP将包排序并进行错误检查,
5、同时实现虚电路间的连接。TCP数据包中包括序号和确认,所以未按照顺序收到的包可以被排序,而损坏的包可以被重传。第一节 网络技术的基本概念java面向连接的服务(如Telnet、FTP、rlogin、X Windows和SMTP)需要高度的可靠性,所以它们使用了TCP。DNS在某些情况下使用TCP发送和接收域名数据库,而使用UDP则传送有关单个主机的信息。第一节 网络技术的基本概念javaUDP是面向无连接的通信协议,UDP数据包括目的端口号和源端口号信息,由于通信不需要连接,所以可以实现广播发送。UDP通信时不需要接收方确认,属于不可靠的传输,可能会出现丢包现象,实际应用中要求程序员编程验证。
6、第一节 网络技术的基本概念javaUDP与TCP位于同一层,但它不负责数据包的顺序、错误或重发。因此,UDP不应用于那些使用虚电路的面向连接的服务,而主要应用于那些面向查询应答的服务,如NFS。相对于FTP或Telnet,这些服务需要交换的信息量较小。使用UDP的服务包括NTP(网络时间协议)和DNS(DNS也使用TCP)。第一节 网络技术的基本概念java欺骗UDP包比欺骗TCP包更容易,因为UDP没有建立初始化连接(也可以称为握手,因为在两个系统间没有虚电路)。也就是说,与UDP相关的服务面临着更大的危险。第一节 网络技术的基本概念java网际互联协议(IP)用于数据包在互联的网络设备间传
7、送。这些设备都带有一个称为IP地址的逻辑地址。由网际互联协议提供的IP地址具有特定的形式。每个IP地址都是32位的数值,通常由4个范围在0255之间的8位数值表示,如192.168.0.2。第一节 网络技术的基本概念二、IP地址与端口java在Internet上,各主机间通过TCP/IP协议发送和接收数据包,各个数据包根据其目的主机的IP地址来进行互联网络中的路由选择。可见,数据包顺利地传送到目的主机是可以的。但是大多数操作系统都支持多程序(进程)同时运行,那么目的主机应该把接收到的数据包传送给同时运行的哪一个进程呢?为了解决这个问题,端口(port)机制便被引入进来。第一节 网络技术的基本概
8、念java本地操作系统会给那些有需求的进程分配协议端口(protocol port,即我们常说的端口),每个协议端口由一个正整数标识,如80,139,445,等等。当目的主机接收到数据包后,将根据包文首部的目的端口号,把数据发送到相应端口,而与此端口相对应的那个进程将会读取数据并等待下一组数据的到来。第一节 网络技术的基本概念java不光接收数据包的进程需要开启端口,发送数据包的进程也需要开启端口,这样,数据包中将会标识有源端口,以便接收方能顺利地回传数据包到这个端口。如果没有指明端口号,则使用服务文件中服务器的端口。每种协议有一个缺省的端口号,在端口号未指明时使用该缺省端口号。第一节 网络技
9、术的基本概念java端口号应用如下:21 FTP:传输文件。23 Telnet:提供远程登录。25 SMTP:传递邮件信息。67 BOOTP:在启动时提供配置情况。80 HTTP:传输Web页。109 POP:使用户能访问远程系统中的邮箱。第一节 网络技术的基本概念java统一资源定位符(Uniform Resource Locator,URL)是对可以从互联网上得到的资源位置和访问方法的一种简洁表示,是互联网上标准资源的地址。互联网上的每个文件都有一个唯一的URL,它包含的信息指出文件的位置以及浏览器应该怎么处理它。第一节 网络技术的基本概念三、URLjavaURL的组成形式为protoco
10、l:/resourceName,其中协议名(protocol)指明获取资源所使用的传输协议,如http、ftp、gopher、file等;资源名(resourceName)则应该是资源的完整地址,包括主机名、端口号、文件名或文件内部的一个引用。例如:http:/ 协议名:/机器名+文件名http/:80/Gamelan/network.html#BOTTOM 协议名:/机器名+端口号+文件名+内部引用第一节 网络技术的基本概念java第二节 Java网络技术架构javaJava最初是作为一种网络编程语言出现的,它能够使用网络上的各种资源和数据,与服务器建立各种传输通道,将自己的数据传送到网络的
11、各个地方。第二节 Java网络技术架构javaJava中有关的网络功能都定义在程序包中。Java所提供的网络功能可分为以下三种:URL和URLConnection是功能中最高级的一种。通过URL的网络资源表达方式,很容易确定网络上数据的位置。利用URL的表示和建立,Java程序可以直接读取网络上的数据,或把自己的数据传送到网络的另一端。所谓Socket,可以想象成两个不同的程序通过网络的通道,这是传统网络程序中最常用的方法。一般在TCP/IP网络协议下的客户服务器软件采用Socket作为交互的方式。第二节 Java网络技术架构javaDatagram是功能中最低级的一种。其他网络数据传送方式都
12、假想在程序执行时,建立一条安全稳定的通道。但是以Datagram的方式传送数据时,只是把数据的目的地记录在数据包中,然后就直接放在网络上进行传输,系统不保证数据一定能够安全送到,也不能确定什么时候可以送到。也就是说,Datagram不能保证传送质量。第二节 Java网络技术架构java第三节 URL 编 程javaJava网络API通过提供URL类让我们能在源代码层使用URL。每一个URL对象都封装了资源的标识符和协议处理程序。通过调用URL构造函数来建立URL对象后,我们可以通过调用URL的方法来提取URL的组件,打开一个输入流(Input Stream),从中读取信息,获得某个能方便检索资
13、源数据的对象的引用,然后比较两个URL对象中的URL,获得资源的连接对象,该连接对象允许代码了解并写入更多的资源信息。第三节 URL 编 程java为了表示URL,中实现了类URL。我们可以通过下面的构造方法来初始化一个URL对象:(1)public URL(String spec);通过一个表示URL地址的字符串可以构造一个URL对象。URL urlBase=new URL(http:/ URL 编 程一、创建URL对象java(2)public URL(URL context,String spec);通过基于URL和相对URL构造一个URL对象。URL net263=new URL(ht
14、tp:/ index263=new URL(net263,index.html);(3)public URL(String protocol,String host,String file);new URL(http,/pages/G.html);第三节 URL 编 程java(2)public URL(URL context,String spec);通过基于URL和相对URL构造一个URL对象。URL net263=new URL(http:/ index263=new URL(net263,index.html);(3)public URL(String protocol,String
展开阅读全文