欢迎来到代码驿站!

JAVA代码

当前位置:首页 > 软件编程 > JAVA代码

基于java URL和URLConnection(详解)

时间:2021-01-10 11:07:05|栏目:JAVA代码|点击:

URL类将URL地址封装成对象,提供了解析URL地址的方法,如获取uri部分、host部分、端口等。

URLConnection则是URL对象和Socket连接给结合起来了,使得可以更轻松地获取发起URL请求的连接套接字。

1.URL

import java.net.MalformedURLException;
import java.net.URL;
public class URLDemo {
  public static void main(String[] args) throws MalformedURLException {
    URL url = new URL("http://192.168.0.124:8080/webapp/index.html?name=lisi");
    int port = url.getPort();
    String host = url.getHost();
    String uri_path = url.getPath();
    String request_file = url.getFile();
    String query = url.getQuery();
    System.out.println("host: "+ host);
    System.out.println("port: "+ port);
    System.out.println("uri_path: "+ uri_path);
    System.out.println("request_file: "+ request_file);
    System.out.println("query: "+ query);
  }
}

2.URLConnection

通过URL的openConnection()方法可以获取URLConnection对象,这个对象是面对这个URL的连接。

也就是说,这个对象其实是一个已连接套接字,它不仅具有解析http响应报文的功能,还具有套接字的相关功能(例如获取输入流、输出流等)。

仅就解析对象来说,URL对象解析的是URL地址,可以看作是解析http请求报文(如getPort(),getFile()等),而URLConnection则解析的是http响应报文(如getLastModified(),getHeaderFields()等)。

import java.io.IOException;
import java.io.InputStream;
import java.net.MalformedURLException;
import java.net.URL;
import java.net.URLConnection;

public class URLConnectionDemo {
  public static void main(String[] args) {
    try {
      URL url = new URL("https://www.baidu.com/");
      URLConnection urlc = url.openConnection();
      System.out.println(urlc.getURL()); //解析http响应报文
      InputStream is = urlc.getInputStream();
      byte[] buf = new byte[1024];
      int len = 0;
      while((len=is.read(buf))!=-1) {
        System.out.println(new String(buf,0,len));
      }
    } catch (MalformedURLException e1) {
      // TODO Auto-generated catch block
      e1.printStackTrace();
    } catch (IOException e) {
      // TODO Auto-generated catch block
      e.printStackTrace();
    }
  }
}

上一篇:java组件commons-fileupload文件上传示例

栏    目:JAVA代码

下一篇:Java 输入多行字符串或者多个int数值的方法

本文标题:基于java URL和URLConnection(详解)

本文地址:http://www.codeinn.net/misctech/43293.html

推荐教程

广告投放 | 联系我们 | 版权申明

重要申明:本站所有的文章、图片、评论等,均由网友发表或上传并维护或收集自网络,属个人行为,与本站立场无关。

如果侵犯了您的权利,请与我们联系,我们将在24小时内进行处理、任何非本站因素导致的法律后果,本站均不负任何责任。

联系QQ:914707363 | 邮箱:codeinn#126.com(#换成@)

Copyright © 2020 代码驿站 版权所有