• Java 网络编程(三) 创建和使用URL访问网络上的资源


    链接地址:http://www.cnblogs.com/mengdd/archive/2013/03/09/2951877.html

     创建和使用URL访问网络上的资源

      URL(Uniform Resource Locator)统一资源定位符的简称,它表示Internet上某一资源的地址。

      通过URL我们可以访问Internet上的各种网络资源,比如最常见的WWW, FTP站点。浏览器通过解析给定的URL可以在网络上查找相应的文件或其他资源。

      在目前使用最为广泛的TCP/IP中对于URL中主机名的解析也是协议的一个标准,即所谓的域名解析服务

      使用URL进行网络编程,不需要对协议本身有太多的了解,功能也比较弱,相对而言是比较简单的。

     

    URL组成

      一个URL包括两个主要部分:

      协议标识符:HTTP, FTP, File等。

      资源名字:主机名,文件名,端口号,引用。

     

    创建URL

      在Java程序中,可以创建表示URL地址的URL对象。

      URL对象表示一个绝对的URL地址,但URL对象可用绝对URL、相对URL和部分URL构建。

      创建URL的代码如下,如果创建失败会抛出异常:

    复制代码
          try
          {
             URL myURL = new URL("http://www.google.com.tw/");
          }
          catch (MalformedURLException e)
          {
             //exception handler code here
          }
    复制代码

      

    获得URL对象的各个属性

      URL类中有各种用于获取属性的方法:

      getProtocol

      getHost

      getPort

      getFile

      getRef

      例子程序如下: 

    获取URL对象属性

    创建和使用URL访问网上资源

      为获得URL的实际比特或内容信息,用它的openConnection()方法从它创建一个URLConnection对象,与调用URL对象相关,它返回一个URLConnection对象。它可能引发IOException异常。

      URLConnection是访问远程资源属性的一般用途的类。如果你建立了与远程服务器之间的连接,你可以在传输它到本地之前用URLConnection来检查远程对象的属性。这些属性由HTTP协议规范定义并且仅对用HTTP协议的URL对象有意义。

      URL和URLConnection类对于希望建立与HTTP服务器的连接来获取信息的简单程序来说是非常好的。

      例子程序UrlConnection01,建立连接,从连接对象获取输入流,然后读入,再写出到文件中去。 

    程序UrlConnection01

      

      也可以直接从URL对象获取输入流,见例子程序UrlConnection02。

    程序UrlConnection02

       查看源代码可以看到内部实现机制是一样的: 

        public final InputStream openStream() throws java.io.IOException 
      { return openConnection().getInputStream(); }

       程序代码UrlConnection03用字符流的方式读取网站内容显示在控制台上。  

    程序UrlConnection03

     

    参考资料

      圣思园张龙老师Java SE系列视频教程。

    如果一件事情你觉得难的完不成,你可以把它分为若干步,并不断寻找合适的方法。最后你发现你会是个超人。不要给自己找麻烦,但遇到麻烦绝不怕,更不要退缩。 电工查找电路不通点的最快方法是:分段诊断排除,快速定位。你有什么启示吗? 求知若饥,虚心若愚。 当你对一个事情掌控不足的时候,你需要做的就是“梳理”,并制定相应的规章制度,并使资源各司其职。
  • 相关阅读:
    react native 之页面跳转
    react native 之异步请求
    react native 之 redux
    react native 之页面布局
    ES6的相关新属性
    css中的选择器
    js中return的作用
    校园商铺-7商品类别模块-2商品类别列表从后到前
    校园商铺-6店铺编辑列表和列表功能-9店铺管理页面的前端开发
    校园商铺-6店铺编辑列表和列表功能-8店铺列表展示前端开发
  • 原文地址:https://www.cnblogs.com/wvqusrtg/p/5213003.html
Copyright © 2020-2023  润新知