- 浏览: 132776 次
- 性别:
- 来自: 苏州
文章分类
最新评论
HttpURLConnection是基于HTTP协议的,其底层通过socket通信实现。
和Httpclient 一样都可以用来抓取网页,不过HttpClient更强大。
import java.net.HttpURLConnection;
import java.net.URL;
import java.io.BufferedReader;
import java.io.InputStreamReader;
/** *//**
* 网页阅读器.
*
*/
public class PageReader {
//连接对象
private static HttpURLConnection conn;
/** *//**
* 根据url连接某地址,并返回返回码.
* 返回码说明:
* 0~200为正常情况,其中200为OK
* 其余都为错误的情况,具体请参见w3
* @param urlStr 需连接的url字符串
*/
private int connect(String urlStr) throws Exception {
URL url = new URL(urlStr);
conn = (HttpURLConnection) url.openConnection();
System.out.println("返回码: " + conn.getResponseCode());
//如果定向的地址经过重定向,
//那么conn.getURL().toString()显示的是重定向后的地址
System.out.println(conn.getURL().toString());
return conn.getResponseCode();
}
/** *//**
* 读取网页的内容.
* @return 返回网页的内容
*/
private String readContents() throws Exception {
BufferedReader in = null;
StringBuffer sb = new StringBuffer();
in = new BufferedReader(new InputStreamReader(conn
.getInputStream()));
String inputLine;
while ((inputLine = in.readLine()) != null) {
sb.append(inputLine);
sb.append("\n");
}
return sb.toString();
}
/** *//**
* 中断连接.
*/
private void disconnect() {
conn.disconnect();
}
/** *//**
* 测试方法
* @param args
* @throws Exception
*/
public static void main(String[] args) throws Exception {
PageReader reader = new PageReader();
String url = "http://hexapixel.com/download.php? file=com.hexapixel.widgets.ribbon.alphatest.src.jar";
reader.connect(url);
String content = reader.readContents();
System.out.println("网页内容:" + content);
reader.disconnect();
}
}
发表评论
-
几种任务调度的 Java 实现方法与比较
2014-12-05 16:16 655几种任务调度的 Java 实现方法与比较 http:// ... -
Jibx
2013-03-11 10:25 1352A. Java To Xml 1. Generate ... -
常用的正则表达式(转)
2013-02-06 11:16 1310“^d+$” //非负整 ... -
solr 开发文档
2013-01-04 13:12 0http://www.cnblogs.com/hoojo/ar ... -
Java如何调用script
2012-05-16 16:25 1913在Java 中如何调用各种脚本(shell,perl,pyth ... -
理解ThreadLocal(转)
2011-09-02 15:03 958ThreadLocal是什么 早在JD ... -
Java关键字transient和volatile小结(转)
2011-08-29 17:26 20236transient和volatile两个关 ... -
REST与SOAP样式Web 服务的区别(转)
2011-07-25 11:25 1160基本原理层次上说,REST 样式和 SOAP ... -
Java自带的线程池ThreadPoolExecutor详细介绍说明和实例应用(转)
2011-04-11 10:51 1987从 Java 5 开始,Java 提供了自己的线程池。线程 ... -
使用 JunC++ion 创建JNI
2009-07-21 16:31 1581在java中创建jni,都是通过一些命令,创建一些 ... -
利用httpclient访问受保护的资源地址
2009-06-22 17:00 1380模拟登录 1、session方式 import java.io ... -
常见算法程序实现集合(C,Java)
2008-12-22 15:16 1135常見程式演算」主要收集一些常見的程式練習題目,您可以藉這些題目 ... -
在 Windows 中实现 Java 本地方法
2008-12-10 14:26 1561WebSphere Development Research ... -
N!的全排列算法(Java实现)
2008-09-16 16:20 2610public class TestSort { Str ... -
JDK1.5新特性(转载)
2008-02-27 14:13 2880"JDK1.5"的一个重要主题就是通过新增 ... -
采用ASM动态生成set和get方法
2007-12-18 16:13 4113ASM 功能强大,采用指令操纵class文件,可以生成你所需的 ... -
Java的ClassLoader与Package机制(转载)
2007-07-01 21:41 1285为了深入了解Java的ClassLoader机制,我们先来做以 ...
相关推荐
本篇文章将深入探讨HttpURLConnection的使用方法、特性以及一些关键的示例代码。 一、HttpURLConnection简介 HttpURLConnection继承自URLConnection,它提供了对HTTP协议的直接支持。相比于HttpClient,...
在本文中,我们将深入探讨`HttpURLConnection`的使用,包括GET和POST请求的实现,以及如何处理可能出现的乱码问题。 一、`HttpURLConnection`概述 `HttpURLConnection`是`URLConnection`的子类,专门用于处理HTTP...
本篇文章将深入探讨如何在Android中简单使用`HttpURLConnection`进行网络请求。 首先,了解`HttpURLConnection`的基本用法。在Android中,网络操作通常在子线程(非UI线程)中进行,以避免阻塞主线程导致应用无响应...
Java HttpURLConnection 使用方法详解 Java HttpURLConnection 是 Java 中用于发送 HTTP 请求的类,通过使用 HttpURLConnection,可以发送 GET 请求和 POST 请求,並获取服务器的响应结果。下面是使用 Java ...
本篇文章将深入探讨如何使用`HttpURLConnection`以POST方式提交请求。 ### 1. 创建连接 首先,我们需要获取到`HttpURLConnection`实例。这通常通过调用`URL`对象的`openConnection()`方法实现,然后强制转换为`...
默认情况下,HttpURLConnection使用GET方法。若需使用POST、PUT等其他方法,需调用setRequestMethod()方法: ```java connection.setRequestMethod("POST"); ``` 4. 添加请求头: 可以通过setRequestProperty()或...
默认情况下,HttpURLConnection使用GET方法。要使用POST、PUT等其他方法,需设置请求方法: ```java connection.setRequestMethod("POST"); ``` ### 4. 设置请求属性 你可以设置HTTP头来控制请求的各个方面,如...
**一、HttpURLConnection使用步骤** 1. **建立连接**:通过`java.net.URL`对象打开与服务器的连接,然后调用`openConnection()`方法得到`HttpURLConnection`实例。 2. **设置请求方法**:通常我们使用`...
在给定的代码片段中,展示了如何使用`HttpURLConnection`进行文件下载。 首先,我们看到代码引入了`java.io`、`java.net`和`java.util`这三个包。`java.io`包含了输入/输出流,用于处理数据的读写;`java.net`包含...
在本例中,我们将探讨如何使用`HttpURLConnection`来下载图片,这是一个基础但实用的网络编程任务。下面我们将详细介绍这个过程,并涉及到的相关知识点。 1. **HttpURLConnection简介**: `HttpURLConnection`是`...
1. **创建连接**:使用`URL`对象构造一个`HttpURLConnection`实例,通常会通过`openConnection()`方法来实现。例如: ```java URL url = new URL("http://yourserver.com/upload"); HttpURLConnection connection...
在使用HttpUrlConnection发送GET请求时,我们将参数附加到URL上。例如,如果我们要从一个API获取JSON数据,URL可能类似于`http://api.example.com/data?key=value`。然后,我们可以创建一个HttpURLConnection实例,...
本篇文章将详细讲解如何使用`HttpURLConnection`实现文件上传,同时涉及到服务器端处理上传文件的代码。我们将讨论以下核心知识点: 1. **HttpURLConnection介绍**: `HttpURLConnection`是Java标准库中的类,它是...
没测试通过的HttpURLConnection使用
在Android开发中,网络编程是不可或...使用HttpURLConnection可以方便地实现这些操作,提高应用的用户体验。在实际开发中,我们还需要考虑多线程下载、并发控制、下载队列管理等高级特性,以进一步优化性能和资源利用。
### 使用HttpURLConnection发送短信 在Java开发中,通过网络接口实现短信发送是一种常见的应用场景,例如在用户注册、找回密码等场景下验证用户身份时。本文将详细介绍如何利用`HttpURLConnection`来实现短信发送...
当我们使用`HttpURLConnection`时,有几个重要的知识点需要了解: 1. **连接与读取超时**: 描述中提到的“设置超时”至关重要。默认情况下,`HttpURLConnection`没有设置超时,如果网络出现问题,程序可能会...
本文将详细介绍如何使用`HttpURLConnection`和`HttpClient`这两种方式来实现这一目标。 首先,让我们从`HttpURLConnection`开始。`HttpURLConnection`是Java内置的HTTP客户端,它简单且易于使用,适用于轻量级的...
首先,我们来看使用HttpURLConnection的方式。HttpURLConnection是Java标准库提供的类,它直接继承自URLConnection,支持HTTP和HTTPS协议。以下是一个简单的使用示例: ```java public class HttpHelper { // 使用...
在"HttpURLConnection的使用二"这个主题中,我们可能讨论的是在初识`HttpURLConnection`的基础上,深入理解其高级特性和实践技巧。`HttpURLConnection`的主要功能包括: 1. **设置请求方法**:默认情况下,`...