• java URL编程


    一、URL编程技术

            URL是统一资源定位器的缩写,它是指向互联网“资源”的指针。URL表示了Internet上某个资源的地址。URL支持http,file,ftp等 多种协议。通过URL标识,可以直接使用通信协议获取远端计算机上的资源信息,方便快捷的开发Internet应用程序。

     java.net 包中的URL类是对统一资源定位符的抽象,使用URL创建对象的应用程序称为客户端程序,一个URL对象存放着一个具体的资源的引用,表明客户要访问这个 URL中的资源,利用URL对象可以获取URL中的资源。一个URL对象通常包含最基本的三部分信息:协议、地址、资源。协议必须是URL对象所在的 JVM支持的协议,常用的协议如:HTTP、FTP等都是JVM支持的协议,地址必须是能连接的有效的IP地址或域名地址,资源可以是主机上的任何一个文 件。

    URL代码实现:

     1 /**
     2  * 使用URL直接读取或写入网络上的数据
     3  * 2016/5/6
     4  **/
     5 package org.net;
     6 
     7 import java.io.BufferedReader;
     8 import java.io.IOException;
     9 import java.io.InputStreamReader;
    10 import java.net.*;
    11 
    12 public class NetTest_1 {
    13     public static void main(String[] args) throws Exception {
    14             //String str = "http://www.imooc.com";
    15             URL imooc = new URL("http://www.imooc.com");
    16             //#号后面表示锚点
    17             URL url = new URL(imooc,"/index.html?username = tom#test");
    18             System.out.println("protocol(协议):" + url.getProtocol());
    19             System.out.println("host(主机): " + url.getPort());
    20             //如果没有制定端口号,则使用默认的端口号  此时getPort()方法的返回值为-1
    21             System.out.println("port(端口): " + url.getPort());
    22             System.out.println("path(路径): " + url.getPath());
    23             System.out.println("file(文件): " + url.getFile());
    24             System.out.println("Ret(文件类型):  " + url.getRef());
    25             System.out.println("DefaultPort(默认端口): " + url.getDefaultPort());
    26             System.out.println("query(用户): " + url.getQuery());
    27             System.out.println("content(内容): " + url.getContent());
    28     }
    29 }

    结果:

    protocol(协议):http
    host(主机): -1
    port(端口): -1
    path(路径): /index.html
    file(文件): /index.html?username = tom
    Ret(文件类型):  test
    DefaultPort(默认端口): 80
    query(用户): username = tom
    content(内容): sun.net.www.protocol.http.HttpURLConnection$HttpInputStream@5c647e05
    

     UPLConnection类

             URLConnection用于应用程序和URL之间的连接,应用程序通过URLConection可以获得URL对象的相关信息,它是所有URL连接通信类的父类。该类的对象可以用来读写URL对象所表示的Internet上的数据。

    代码实现:

     1 /**
     2  * 读取Internet上的数据
     3  * 2016/5/6
     4  **/
     5 package org.net;
     6 import java.io.*;
     7 import java.net.*;
     8 
     9 public class NetTest_2 {
    10     static int ch;
    11     public static void main(String[] args) throws Exception {
    12         URL url = new URL("http://www.imooc.com");
    13         URLConnection uc = url.openConnection();
    14         System.out.println("文件类型: "+ uc.getContentType());
    15         System.out.println("文件长度: "+ uc.getContentLength());
    16         System.out.println("文件内容:");
    17         System.out.println("###############################");
    18         InputStream is = uc.getInputStream();
    19         while((ch = is.read()) != -1){
    20             System.out.print((char)ch);
    21         }
    22         is.close();
    23     }
    24 }

     结果展示:

    文件类型: text/html; charset=utf-8
    文件长度: -1
    文件内容:
    ###############################
    <!DOCTYPE html>
    <html>
    <head>
    <meta charset="utf-8">
    <title>慕课网-国内最大的IT技能学习平台</title>
    <meta http-equiv="X-UA-Compatible" content="IE=edge, chrome=1">
    .............(后边比较长,不再显示)
    
  • 相关阅读:
    关于java 定时任务
    centos 安装mysql
    javamelody 使用
    spring boot单元测试(转)
    关于CSS中的PX值(像素)
    CSS各个浏览器Hack的写法
    RGB颜色二值化
    关于promise对象的笔记
    关于跨域的问题
    JavaScript笔记
  • 原文地址:https://www.cnblogs.com/snail-lb/p/5467311.html
Copyright © 2020-2023  润新知