站内搜索: 请输入搜索关键词

当前页面: 开发资料首页Java 专题Java网络编程之URI、URL研究(下)

Java网络编程之URI、URL研究(下)

摘要: 本文中我将继续向大家介绍如何使用URL和MIME的概念以及它如何与URL发生联系的
<iframe src="http://training.yesky.com/ad/iframe/develop_java.htm" frameBorder=0 width=578 scrolling=no height=62></iframe>

  在上个专题《Java网络编程之URI、URL研究(上)》中我们介绍了URI、URL的慨念和体系结构,以及如何使用URI在本文中我将继续向大家介绍如何使用URL和MIME(多用途的网际邮件扩充协议)的概念以及它如何与URL发生联系的。


  使用URL

  网络API通过提供URL类让我们能在源代码层使用URL。每一个URL对象都封装了资源的标识符和协议处理程序。前面的技巧显示了获得URL对象的途径之一是调用URI对象的toURL()方法。但是这种选择不一定方便(为什么在需要URL对象的时候必须建立URI对象呢?)。作为代替,你可以调用URL构造函数来建立URL对象。你也可以调用URL的方法来提取URL的组件,打开一个输入流(input stream)从资源中读取信息,获得某个能方便检索资源数据的对象的引用,比较两个URL对象中的URL,获得到资源的连接对象,该连接对象允许代码了解(并写入)更多的资源的信息。
<iframe align=right marginWidth=0 marginHeight=0 src="http://www.chinabyte.com/tag/cont_flash_software.html" frameBorder=0 width=360 scrolling=no height=300></iframe>
  URL类有六个构造函数。其中最简单的是URL(String url),它有一个String类型的参数,把URL分解为自己的组件,并把这些组件存储在一个新的URL对象中。如果某个URL没有包含协议处理程序或该URL的协议是未知的,其它的五个构造函数会产生一个java.net.MalformedURLException对象。
下面的代码片断演示了使用URL(String url)建立一个URL对象,该对象封装了一个简单的URL组件和http协议处理程序。

<table width="100%" bgColor=#ffffff> <tr> <td>URL url = new URL ("http://www.informit.com");</td></tr></table>
  一旦拥有了URL对象,你就可以使用getAuthority()、getDefaultPort()、 getFile()、 getHost()、 getPath()、getPort()、 getProtocol()、getQuery()、getRef()和getUserInfo(). The getDefaultPort()等方法提取各种组件。如果URL中没有指定端口的部分,getDefaultPort()方法返回URL对象的协议处理程序使用(资源定位)的默认端口。getFile()方法返回路径和查询组件的结合体。getProtocol()方法返回决定资源的连接类型(例如http、mailto、ftp)的协议的名称。getRef()方法返回URL的部分片断(我们所知道的引用)。最后,getUserInfo()方法返回授权机构组件的用户信息部分。在这些URL组件提取方法中,如果某些组件不存在(如果没有给URL对象的协议处理程序指定默认的端口,它也返回-1),这些方法就返回null或-1。

  作为这些组件提取方法的补充,你还可以调用openStream()方法检索java.io.InputStream引用。使用这种引用,你可以用面向字节的方式读取资源。




↑返回目录
前一篇: Java的网络功能与编程
后一篇: 对Java多态性综合运用的探讨