一、URL

URL对象可以认为是URLConnection对象+Socket对象。

Java.lang.Object

|-Java.net.URL

常用构造方法:

URL(String spec)
          根据 String 表示形式创建
URL 对象。

常用方法:

 URLConnection

openConnection()
          返回一个 URLConnection 对象,它表示到
URL 所引用的远程对象的连接。

URLConnection

openConnection(Proxy proxy)
          
与 openConnection() 类似,所不同是连接通过指定的代理建立;不支持代理方式的协议处理程序将忽略该代理参数并建立正常的连接。

InputStream

openStream()
          
打开到此 URL 的连接并返回一个用于从该连接读入的 InputStream

二、URLConnection

Java.lang.Object

|-java.net.URLConnection

构造方法:

protected

URLConnection(URL url)
          构造一个到指定 URL 的 URL 连接。

常用方法:

 InputStream

getInputStream()
          返回从此打开的连接读取的输入流。

 OutputStream

getOutputStream()
          
返回写入到此连接的输出流。

 URL

getURL()
          
返回此 URLConnectionURL 字段的值。

三、使用URL获取网页内容

使用的服务器:Apache

代码:

 package p08.URLDemo.p01.URLDemo;

 import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.net.URL;
import java.net.URLConnection; public class URLObjectDemo01 {
public static void main(String args[]) throws IOException
{
/**
* URL对象实际上是URLConnection对象+Socket对象
*/
URL url=new URL("http"+ "://192.168.209.1:80//myWeb/index.html?name=zhangsan");
URLConnection urslc=url.openConnection();
InputStream is=urslc.getInputStream();
//两句可以合并成InputStream is=url.openStream();
InputStreamReader isr=new InputStreamReader(is);
BufferedReader br=new BufferedReader(isr);
String str=null;
while((str=br.readLine())!=null)
{
System.out.println(str+System.getProperty("line.separator"));
}
br.close();
}
}

运行结果:

相对于使用Socket,这里省略了开始行与首部行,只有实体主体部分

【JAVA网络流之URL】的更多相关文章

  1. java后台调用url无协议

    url格式不正确,可能有"www.baidu.com"    "这个不能有 // 下载pdf public void downpdf(String URL, String ...

  2. JAVA訪问URL

    JAVA訪问URL: package Test; import java.io.BufferedReader; import java.io.IOException; import java.io.I ...

  3. java web基础 --- URL重定向Filter

    java web基础 --- URL重定向Filter httpRequest.getRequestDispatcher("/helloWorld").forward(httpRe ...

  4. Java中的URL类

    Java的网络类可以让你通过网络或者远程连接来实现应用.而且,这个平台现在已经可 以对国际互联网以及URL资源进行访问了.Java的URL类可以让访问网络资源就像是访问你本地的文件夹一样方便快捷.我们 ...

  5. java如何提取url里的域名

    使用java标准类库java.net.URL java.net.URL  url = new  java.net.URL("http://blog.csdn.net/zhujianlin19 ...

  6. JAVA抓取URL

    package com.ais.plugin.analyse.test; import com.ais.plugin.analyse.util.MD5; import java.io.*; impor ...

  7. java解析出url请求的路径和参数键值对类 - 转

    import java.util.HashMap; import java.util.Map; public class CRequest { /** * 解析出url请求的路径,包括页面 * @pa ...

  8. 解决java中对URL编码的问题

    首先查看javascript中的encodeURI和encodeURLComponent方法的区别. encodeURI:不会对 ASCII 字母和数字进行编码,也不会对这些 ASCII 标点符号进行 ...

  9. Java网络编程(URL&URLConnection)

    package cn.itcast.net.p2.ie_server; import java.io.IOException; import java.io.InputStream; import j ...

随机推荐

  1. fastx_toolkit软件使用说明

    高通量测序数据下机后的原始fastq文件,包含4行,其中一行为质量值,另外一行则为对应序列,我们都了解高通量的数据处理首先要进行质量控制,这些过程包括去接头.过滤低质量reads.去除低质量的3'和5 ...

  2. mysql 表关联查询报错 ERROR 1267 (HY000)

    解决翻案:http://stackoverflow.com/questions/1008287/illegal-mix-of-collations-mysql-error 即: SET collati ...

  3. sharepoint的导航开发

    2.来大体讲一下“导航” (1)全局导航 : 整个网站集的导航:(如果公司的网站有很多子网站,这时便会用到全局导航啦):贴一下主要代码: using Microsoft.SharePoint.Publ ...

  4. centos6.5 tomcat开机启动

    可参考:centos6.5 nginx开机启动 /etc/init.d/下添加tomcatd文件,内容如下: #!/bin/sh # # chkconfig: - # # Licensed to th ...

  5. OPCServer Modbus使用和配置

    一,安装KEPware.Enhanced.OPC.DDE.KEPServer.(PLC数据传送给KEPServer,开发的程序用OPCServer读KEPServer) 设置ip地址后面是指的plc站 ...

  6. Nginx反向代理到Tomcat服务器

    在实际生产中,Tomcat服务器一般不单独使用在项目中,对于静态资源的响应Nginx表现的比较好,另外由于nginx是专门用于反向代理的服务器,所以很容易实现将java的请求转发到后端交给tomcat ...

  7. perform

    public class ArgsTest { private List <Object> args; private ArgsTestCheckPoint checkPoint; pub ...

  8. 理解和解决MySQL乱码问题【转】

    本文来自:http://www.cnblogs.com/cenalulu/p/4325693.html 要了解为什么会出现乱码,我们就先要了解从客户端发起请求,到MySQL存储数据,再到下次从表取回客 ...

  9. linux 配置tomcat运行远程监控(JMX)

    在实际使用中,我们经常要监控tomcat的运行性能.需要配置相应的参数提供远程连接来监控tomcat服务器的性能.本文详细介绍如何一步一步的配置tomcat相应参数.允许远程连接监控. 工具/原料 v ...

  10. Android studio 自定义打包APK名称

    Android Studio打包应用默认生成的apk名称是:app-release.apk .如果我们要让生成的apk名跟我们版本包名有联系的话,那我们就要自定义生成的apk名了,要怎么做呢. 我们只 ...