Java 2实用教程第4版_第13章_Java网络编程.ppt
《Java 2实用教程第4版_第13章_Java网络编程.ppt》由会员分享,可在线阅读,更多相关《Java 2实用教程第4版_第13章_Java网络编程.ppt(25页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、注意:开始用功了注意:开始用功了!第 页Java2实用教程实用教程(第第4版版)第第13章章配合例子源代码一起使用例子源代码一起使用Power point 制作:耿祥义 张跃平JavaJava网络编程网络编程 第 页导读导读主要内容主要内容URL类类InetAdress类类套接字套接字UDP数据报数据报广播数据报广播数据报Java远程调用远程调用(RMI)第 页13.1 URLURL类类 URLURL类类是是包包中中的的一一个个重重要要的的类类,URLURL的的实实例例封封装装着着一一个个统统一一资资源源定定位位符符(Uniform Uniform Resource Resource Loca
2、tor)Locator),使使用用URLURL创创建建对对象象的的应应用用程程序序称称作作客客户户端端程序。程序。一一个个URLURL对对象象通通常常包包含含最最基基本本的的三三部部分分信信息息:协协议议、地址、资源。地址、资源。第 页13.1.1 URLURL的构造方法的构造方法 URL类通常使用如下的构造方法创建一个类通常使用如下的构造方法创建一个URL对象:对象:public URL(String spec)throws MalformedURLException public URL(String protocol,String host,String file)throws Malf
3、ormedURLException 第 页13.1.2 读取读取URLURL中的资源中的资源 URL对象调用对象调用 InputStream openStream()方方法法可可以以返返回回一一个个输输入入流流,该该输输入入流流指指向向URL对对象象所所包包含含的的资资源源。通通过过该该输入流可以将服务器上的资源读入到客户端。输入流可以将服务器上的资源读入到客户端。例子例子1(Example13_1.java,Look.java)用户在命令行窗用户在命令行窗口输入网址,读取服务器上口输入网址,读取服务器上的资源的资源.运行效果如图运行效果如图13.1.第 页13.2 InetAdressIne
4、tAdress类类 13.2.1 地址的表示地址的表示 InternetInternet上的主机有两种方式表示地址:上的主机有两种方式表示地址:1 1域名域名 例如例如 2 2IPIP地址地址 例如例如 202.108.35.210202.108.35.210 包包中中的的InetAddressInetAddress类类对对象象含含有有一一个个InternetInternet主主机机地地址址的域名和的域名和IPIP地址,地址,例如例如 页13.2.2 获取地址获取地址 1获取获取Internet上主机的地址上主机的地址可以使用可以使用InetAddress类类的静态方法的静态方法getByNa
5、me(String s);获获得得一一个个InetAddress对对象象,该该对对象象含含有有主主机机地地址址的的域域名名和和IP地址,该对象用如下格式表示它包含的信息:地址,该对象用如下格式表示它包含的信息: 2获取本地机的地址获取本地机的地址我我们们可可以以使使用用InetAddress类类的的静静态态方方法法getLocalHost()获获得得一一个个InetAddress对象对象,该对象含有本地机的域名和该对象含有本地机的域名和IP地址。地址。例子例子2 第 页13.3 套接字套接字 13.3.1 套接字套接字 IPIP地地址址标标识识InternetInternet上上的的计计算算机
6、机,端端口口号号标标识识正正在在计计算算机机上上运运行行的的进进程程(程程序序)。端端口口号号被被规规定定为为一一个个1616位位的的0 06553565535之之间间的的整数。整数。当当两两个个程程序序需需要要通通信信时时,它它们们可可以以通通过过使使用用SocketSocket类类建建立立套套接接字字对对象象并并连连接接在在一一起起(端端口口号号与与IPIP地地址址的的组组合合得得出出一一个个网网络络套套接字)。接字)。第 页13.3.2 客户端套接字客户端套接字 客客户户端端的的程程序序使使用用Socket类类建建立立负负责责连连接接到到服服务务器器的的套套接接字字对象。对象。建立连接到
7、服务器的套接字对象:建立连接到服务器的套接字对象:try Socket mysocket=new Socket(“http:/192.168.0.78”,1880);catch(IOException e)与与mysocket相关的方法相关的方法 getInputStream()获得一个输入流获得一个输入流 getOutputStream()获得一个输出流获得一个输出流 用用getInputStream()得到的输入流接到另一个得到的输入流接到另一个DataInputStreamDataInputStream数据流上数据流上 用用getOutputStream()得到的输出流接到另一个得到的输
8、出流接到另一个DataOutputStream数据流上数据流上 第 页13.3.3 ServerSocketServerSocket对象与服务器端套接字对象与服务器端套接字_1 _1 服服务务器器必必须须建建立立一一个个ServerSocketServerSocket对对象象,该该对对象象通通过过将将客客户户端端的的套套接接字字对对象象和和服服务务器器端端的的一一个个套套接接字字对对象象连连接接起起来来,从从而达到连接的目的。而达到连接的目的。建立建立ServerSocketServerSocket对象:对象:try ServerSocket serverForClient=new Serve
9、rSocket(2010);catch(IOException e)使使用用方方法法accept()accept()将将客客户户的的套套接接字字和和服服务务器器端端的的套套接接字字连连接接起来,代码如下所示起来,代码如下所示:try Socket sc=serverForClient.accept();catch(IOException e)所所谓谓“接接收收”客客户户的的套套接接字字连连接接就就是是accept()accept()方方法法会会返返回回一一个和客户端个和客户端SocketSocket对象相连接的对象相连接的SocketSocket对象。对象。第 页13.3.3 ServerSo
10、cketServerSocket对象与服务器端套接字对象与服务器端套接字_2 _2 客户端的套接字获得的输入输出流和服务器端的套接字获得的输出输入流互相连接.第 页 例例子子3中,客户端向服务器问了三句话,服务器都给出了一一的回答。首先将例子3中服务器端的Server.java编译通过,并运行起来,等待客户的呼叫,然后运行客户端程序。客户端运行效果如图13.3,服务器端运行效果如图13.4。客户端客户端(Client.java)服务器端服务器端(Server.java)第 页13.3.4 使用多线程技术使用多线程技术 为为了了防防止止堵堵塞塞线线程程,服服务务器器端端收收到到一一个个客客户户的
11、的套套接接字字后后,就就应该启动一个专门为该客户服务的线程。应该启动一个专门为该客户服务的线程。在在下下面面的的例例子子4中中,客客户户使使用用SocketSocket类类不不带带参参数数的的构构造造方方法法SocketSocket()()创建一个套接字对象,该对象需调用创建一个套接字对象,该对象需调用 public void public void connect(SocketAddressconnect(SocketAddress endpoint)throws endpoint)throws IOExceptionIOException请求和参数请求和参数SocketAddressSoc
12、ketAddress指定地址的套接字建立连接。指定地址的套接字建立连接。为为了了使使用用connectconnect方方法法,可可以以使使用用SocketAddressSocketAddress的的子子类类InetSocketAddressInetSocketAddress创创建建一一个个对对象象,InetSocketAddressInetSocketAddress的构造方法是:的构造方法是:InetSocketAddress(InetAddressInetSocketAddress(InetAddress addraddr,intint port)port)第 页 例子例子4中,客户输入圆的
13、半径并发送给服务器,服务器把计算出的圆的面积返回给客户。因此可以将计算量大的工作放在服务器端,客户负责计算量小的工作,实现客户-服务器交互计算,来完成某项任务。首先将例子首先将例子4中服中服务器端的程序编译通过务器端的程序编译通过,并运行起来,等待客户的呼叫。客户端运行效果如图13.6,服务器端运行效果如图13.7。客户端客户端(Client.java,Read.java)服务器端服务器端(Server.javaServer.java )第 页13.4 UDPUDP数数 据据 报报 基基于于UDPUDP的的通通信信和和基基于于TCPTCP的的通通信信不不同同,基基于于UDPUDP的的信息传递更
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- Java 2实用教程第4版_第13章_Java网络编程 实用教程 13 _Java 网络 编程
限制150内