第十六章网络编程基础-天津工程职业技术学院_第1页
第十六章网络编程基础-天津工程职业技术学院_第2页
第十六章网络编程基础-天津工程职业技术学院_第3页
第十六章网络编程基础-天津工程职业技术学院_第4页
第十六章网络编程基础-天津工程职业技术学院_第5页
已阅读5页,还剩14页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

李继唐天津工程职业技术学院计算机工程系1天津工程职业技术学院计算机工程系软件技术教研室 李继唐Tel:25924748JAVA应用程序开发李继唐天津工程职业技术学院计算机工程系2第十六章 网络编程基础李继唐天津工程职业技术学院计算机工程系316.1 网络编程基本概念 一、几个术语:1. URL地址:它唯一地标识 Internet环境下的某文件的位置。(如: /index.html)。 URL格式 : 协议名 :/资源名 协议名 :指明获取资源所用的传输协议 ,如 :http、 ftp、 gopher、 new、 mailto、 file等 . 资源名:是资源的完整地址 ,包括主机IP地址 (或主机域名 )、端口号、完整文件名、 HTML文件中参考位置等。 李继唐天津工程职业技术学院计算机工程系42. URL类:JDK中为编程访问远程主机文件所提供的类(包含在 J包中)。3. URL对象:将远程主机中的某一资源文件的URL地址转化为 Java程序中的 URL类对象,该对象即代表远程主机文件。(如WEB页、文本文件、图形图象文件、音频视频文件等)李继唐天津工程职业技术学院计算机工程系5二、 URL类编程步骤:1. 将远程文件的 URL地址转化为 Java程序中的 URL类对象;2. 调用 URL类中的 openStream()以打开远程文件(返回为二进制格式的InputStream类对象,逐个字节 read()它,但对文本文件可以经过流格式转化为缓冲字符流格式 BufferReader)。3. 利用文件流类中的 read()读取远程文件内容。4. 关闭远程文件流。 李继唐天津工程职业技术学院计算机工程系6三、编程要点: URL类的构造方法都抛出MalformedURLException非运行时异常 ,因此生成URL对象时 ,必须对这一异常进行处理 .如 : try URL myURL=new URL(“/“); catch (MalformedURLException e) System.out.println(“MalformedURLException:“+e); 实例讲解:URLRead.java AppletReadFile.java 李继唐天津工程职业技术学院计算机工程系7四、 URL类中的 getContent()方法功能 :它建立一个与指定资源的连接并可直接获取 URL指定的资源 ,并且试图决定流的MIME类型并将该流转换为相应的 Java Object。应用 :例如 ,如果我们创建了一个指向 GIF格式图片的 URL,getContent()方法将识别流的类型为 “ image/gif” 或“ image/jpeg”, 并返回 Image类的一个实例 .该 Image对象包含该 GIF图片的一个拷贝.即我们可以通过 getContent()方法将资源取到一个 Java对象中 ,然后进行相应处理 . 实例讲解 : URLImage.java李继唐天津工程职业技术学院计算机工程系816.2 Applet的网络编程一、同一页面中的 Applet之间的相互通讯 1. 相互通讯编程思路 :(1)在本 Applet程序中先利用getAppletContext()获取当前的浏览器环境对象,它返回一个 AppletContext类 对象;(2)然后再调用其中的 getApplet()方法获取对方的 Applet程序类的对象。李继唐天津工程职业技术学院计算机工程系92. 编程步骤:(1)在 HTML文档中利用多个( Applet) 标签来内嵌各个 Applet程序并采用 name属性来命名各个 Applet程序的 ID。 例如:(2)在 Applet程序内借助于 getApplet() 获取对应Applet程序,然后通过调用对方 Applet程序中public型成员。public void actionPerformed (ActonEvent e) Applet applet1=getAppletContext().getApplet(“One”);/必须将返回的 Applet对象强制为本派生类对象(One)applet1) . heFun() ; 示例 applet1.java applet2.java applettoapplet.htm李继唐天津工程职业技术学院计算机工程系10二、在 HTML文件中为 Applet程序提供外部指定参数 1. 应用目的:使 Applet程序的应用更加灵活。2. 编程基本方法:q 在 的起始和终止标签之间,利用来指定各个参数名和参数值(每个参数对应一个 标签)q 在 Applet程序的 init()函数内调用getParameter()来获取指定名称的参数值(由于它返回一个 String对象,对于数值型还应转换它为对应的数值!)OkButton=new Button(getParameter(“ButtonText“);李继唐天津工程职业技术学院计算机工程系11三、 Applet与浏览器之间的通信w 编程方法: 利用方法 getCodeBase()、 getDocumentBase()、 getParameter()、showStatus()( 可以在浏览器的状态条上显示出状态信息)、 showDocument()等函数来实现。2. 实例: 利用 showDocument()实现网页跳转(到http:/www.myD/index.html) 或启动另一个页面。try getAppletContext().showDocument(new URL(“http:/ www.myD/index.html”);catch(MalformedURLException e) 李继唐天津工程职业技术学院计算机工程系12四、 Applet与 Script之间的通信w 编程方法: 利用 Document对象来访问网页中的 Applet。2. 实例:ScriptTOJava.java李继唐天津工程职业技术学院计算机工程系1316.3、 基于 TCP/IP协议 Socket通信一、 Socket的基本概念1. 套接字 Socket: 网络中双向通讯中的某一端称为一个 Socket( 主要有客户端套接字Socket类对象、服务器端套接字ServerSocket类对象)。2. 通讯原理: Socket可以看成在两个程序进行通讯连接中的一个端点,一个程序将一段信息写入 Socket中,该 Socket将这段信息发送给另外一个 Socket中,使这段信息能传送到其他程序中。 李继唐天津工程职业技术学院计算机工程系14李继唐天津工程职业技术学院计算机工程系153. 端口号:服务器端所提供的功能编码(如: WWW: 80、 telnet: 21、 ftp: 23、 smtp: 25、pop3: 110等)。要点:q端口是一个信息缓冲区,用于保留 Socket中的输入 /输出信息;q端口号是一个 16位无符号整数,范围是 0-65535,以区别主机上的每一个程序(端口号就像房屋中的房间号) ;q低于 256的短口号保留给标准应用程序,比如 pop3的端口号就是 110,每一个套接字都组合进了 IP地址、端口号,这样形成的整体就可以区别每一个套接字 。qUNIX操作系 统 中端口的分配: 低于 1024的端口:捆 绑拥 有超 级 用 户权 限的 应 用, 高于 1024的端口:动态或临时分配给客户机应用程序。 李继唐天津工程职业技术学院计算机工程系164. 通讯双方的程序形式:q 客户端程序形式:可以为 Applition或 Applet程序。q 服务器端程序形式:只能为应用程序以提供服务。5. 通讯的方式:q “ 一对一 ” (一个服务器对应一个客户机);q “ 一对多 ” (一个服务器对应多个连接的客户机)。李继唐天津工程职业技术学院计算机工程系17二、获得 服务器及客户机的 IP地址1. 通过调用 Socket类中的 getInetAddress()可以获得远程主机的 IP地址, getPort()可以获得远程主机的端口号。注意: 在服务器中调用它将获得客户机的 IP地址,而在客户机中调用它将获得服务器的 IP地址。2. 通过调用 Socket类中的 getLocalAddress()可以获得本机的 IP地址、 getLocalPort()可以获得本机的端口号。 注意: 在服务器中调用它将获得服务器的 IP地址,而在客户机中调用它将获得客户机的 IP地址。李继唐天津工程职业技术学院计算机工程系18获得 服务器的 IP地址(通过名字确定机器的 IP地址 )try InetAddress myServer= InetAddress.getByName(““);String hostName = myServer.getHostName(); catch (UnknownHostException e) 注: InetAddress类,存储远程系统的 IP地址 根据主机名,获得 IP地址根据 IP地址,获得主机名李继唐天津工程职业技术学院计算机工程系19三、 Socket通讯的编程步骤 编程步骤 : 根据程序的身份分别创建出客户端和服务器端套接字以联通。 双

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论