java网络编程ppt

上传人:第*** 文档编号:49766001 上传时间:2018-08-02 格式:PPT 页数:36 大小:527KB
返回 下载 相关 举报
java网络编程ppt_第1页
第1页 / 共36页
java网络编程ppt_第2页
第2页 / 共36页
java网络编程ppt_第3页
第3页 / 共36页
java网络编程ppt_第4页
第4页 / 共36页
java网络编程ppt_第5页
第5页 / 共36页
点击查看更多>>
资源描述

《java网络编程ppt》由会员分享,可在线阅读,更多相关《java网络编程ppt(36页珍藏版)》请在金锄头文库上搜索。

1、L o g o第二十三讲Java网络编程*1L o g oJava语言提供了丰富的网络编程类库,因 此它非常适合用于网络编程,强大快捷 的网络编程功能正是Java备受欢迎的主 要原因之一。Java的网络功能由几个不同的包实现,基 本的网络功能定义在包中。其中 的接口和类可以大致分为三部分:URL 、URLConnection和Socket。1、引言2 2JavaJavaL o g o2、IP(Internet Protocol)地址连接到Internet中的每台计算机都有唯一的地址,这就是 IP地址。IP地址的表示:IP地址使用32位长度二进制数据表示,一般在实际中看到 的大部分IP地址都是以

2、十进制数据表示的。如: 172.19.9.68。IP地址分类:IP地址分五类,A类留给政府机构;B类分配 给中等规模的公司;C类分配给任何需要的人;D类用于 组播;E类用于实验用。3 3JavaJavaL o g oNO地址分类类地址范围围1A类类地址1.0.0.1-126.255.255.2542B类类地址128.0.0.1-191.255.255.2543C类类地址192.0.0.1-223.255.255.2544D类类地址224.0.0.1-239.255.255.2545E类类地址240.0.0.1-255.255.255.254在实际中可以用127.0.0.1或Localhost表

3、示本机4 4JavaJavaL o g o3、InetAddress类v 在Java中通过InetAddress类表示IP地址,用于实现主机 名和IP地址之间的转换。InetAddress类描述了32位或64位 的IP地址,并通过它的两个子类Inet4Address 和 Inet6Address来实现。 v 之前的IP地址,实际上使用四个十进制数字表示,相当于 32位,把这样的IP地址称为IPV4。 v 但是随着网络上主机越来越多,发现IPV4地址不够使用, 所以又进行了改进产生了IPV6(64位)。 v 注意InetAddress类的构造方法被私有化了,所以不能通 过构造方法对其产生实例对象

4、,只能通过其静态方法对其 产生实例对象。找不到本地机器的地址时,这些方 法通常会抛出UnknownHostException异常,所以 应该在程序中进行异常处理。5 5JavaJavaL o g .InetAddress类的主要方法方法名功能说明 static InetAddress getLocalHost()获获得本地主机的 InetAddress对对象 static InetAddress getByName(String host) 获获得通过过主机名host指 定的InetAddress对象 String getHostAddress()以带圆带圆 点的字符串形式 获获取IP地址 S

5、tring getHostName()获获取主机名字6 6JavaJavaL o g o1)public static InetAddress getLocalHost()该方法返回一个InetAddress对象,这个对象包含了本地机 的IP地址。当查找不到本地机的地址时,将会抛出一个 UnknownHostException异常。2)public static InetAddress getByName (String host) 该方法返回一个由host指定的InetAddress对象,参数host可 以是一个主机名,也可以是一个IP地址或者一个DNS域名 。如果找不到指定的主机的IP地址

6、,那么该方法将抛出一 个UnknownHostException异常。获得一个InetAddress对象后,就可以使用InetAddress类的 getAddress()方法获得本机对象的IP地址(存放在字节数 组中);使用getHostAddress()方法获得本机对象的IP地 址;使用getHostName()方法获得主机名。7 7JavaJavaL o g o3)public Sring getHostAddress()该方法将IP地址以网络字节顺序的字节数组的形式返回。由于 IPV4只有4个字节, IPV6有16个字节,如果需要知道数组的 长度,可以用数组的length字段获得。 4)

7、public Sring getHostName() getHostName()方法返回一个字 符串形式的主机名字。如果被查询的机器没有主机名,或者 如果使用了Applet,但是它的安全性却禁止查询主机名,则 该方法就返回一个具有点分形式的数字IP地址。8 8JavaJavaL o g ov import .InetAddress ; v public class InetAddressTest vpublic static void main(String args) throws Exception vInetAddress locAdd = null ; vInetAddress rem

8、Add = null ; v locAdd = InetAddress.getLocalHost() ;/ 得到本机 v remAdd = InetAddress.getByName(““) ; v System.out.println(“本机的IP地址:“ + locAdd.getHostAddress() ; v System.out.println(“黄淮学院主机的IP地址:“ + remAdd.getHostAddress() ; v;9 9JavaJavaL o g o教材第218页例2程序运行结果如下:1010JavaJavaL o g o4、TCP/IP层次结构TCP/IP采用层

9、次化体系结构,从上至下分为四层:应 用层、传输层、网络层和数据链路层,每一层都实现 特定的网络功能。 这四层结构中比较常见的协议有如下几种: 1)IP协议 (网络层)2)TCP协议(传输层)3)UDP协议 (传输层)4)HTTP (应用层)5)FTP(应用层)1111JavaJavaL o g oApplication (http、ftp、telnet、)Transport (TCP、UDP)Network (IP)Link (device driver)1212JavaJavaL o g o5、URL类URL(Uniform/Universal Resource Locator )统一资源定

10、位符 号。 通过URL可以访问Internet上的各种网络资源。URL的基本 结构由如下5部分组成:/:/#传输协议(protocol):有HTTP、FTP、File等。默认为 HTTP协议。主机名(hostname):指定资源所在的主机名。主机名可以是 IP地址,也可以是主机的名字或者域名。端口号(port):端口号用来区分一个计算机中提供的不同服 务,如Web服务、FTP服务等。每一种服务都用一个端口 号,范围是065535。在URL中,hostname后面的冒号及 端口号是可以省略的, HTTP的默认端口号是80。1313JavaJavaL o g o文件名(filename):文件名包

11、括该文件的完整路径。 在HTTP协议中,有一个默认的文件名是 index.html,因此,http:/与 http:/ http:/ 。 URL类的构造方法 1、public URL(String spec):使用URL字符串构造 一个URL对象URL u1=new URL(“http:/“); 1414JavaJavaL o g oURL类的构造方法2、public URL(String protocol,String host,String file):用 指定的协议、主机名、文件路径及文件名创建一个URL 对象; URL u2=new URL(“http“,““,“/xyx/doc/ma

12、 nhua.html“); 3、public URL(String protocol,String host,int port,String file):用指定的协议、主机名、端口号、文件路径及文件 名创建一个URL对象。第一个String类型的参数是协议的 类型,可以是HTTP、FTP等。第二个String类型参数是 主机上的某个文件(可以包括目录),int类型参数是指定端 口号,最后一个参数给出文件名或路径名。 URL u3=new URL(“http“,““,80,“/xyx/doc/ manhua.html“);1515JavaJavaL o g o URL类中的主要方法 方法名功能说

13、明 public String getProtocol()获获取该该URL的协议协议 名 public String getHost()获获取该该URL的主机名 public int getPort()获获取该该URL的端口号。若无端口,返回-1 public String getFile()获获取该该URL中的文件名 public String getContent()获获取传输协议传输协议 public String toString()将URL转转化为为字符串InputStream openStream()打开该该URL的输输入流 public String getPath()获获取该该

14、URL的路径 URLConnection openConnection()打开由该该URL标识标识 的位置的连连接void set(string protocol,string host,int prot,string file, string ref) 设设置该该URL的各域的值值1616JavaJavaL o g o利用 URL 获取网络资源利用URL获取网络资源步骤如下: (1)创建 URL 对象; (2)使用 URL 对象的 openStream()方法,返回 一个 InputStream; (3)从 InputStream 读入即可。 课本第22页例题: vimport .*; vi

15、mport java.io.*; vpublic class URLReader 1717JavaJavaL o g ovpublic static void main(String args) throws Exception vURL u= new URL(“http:/ vInputStream in=u.openStream(); vbyte b=new bytein.available(); vin.read(b); vSystem.out.println(new String(b); vin.close(); v v1818JavaJavaL o g o6、URLConnection类虽然通过URL类的openStream()方法能够读 取网络上资源中的数据,但是Java提供的 URLConnection类中包含了更加丰富的方法 ,可以对网络上的资源进行更多的处理。例 如,通过URLConnection类,既可以从URL 中读取数据,也可以向URL中的资源发送数 据。URLConnection类表示在应用程序和 URL所标识的资源之间的一个通信连接,它

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 办公文档 > 解决方案

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号