java网络连接搭配apache,java HttpClient获取网页源代码

来源:互联网 发布:加工中心手工编程 编辑:程序博客网 时间:2024/06/05 11:50

转载:http://www.goomoon.com/it/program/j2se/658.html

java HttpClient获取网页源代码

HttpClient 是 Apache Jakarta Common 下的子项目,用来提供高效的、最新的、功能丰富的支持 HTTP 协议的客户端编程工具包,并且它支持 HTTP 协议最新的版本和建议。项目首页是http://hc.apache.org/httpclient-3.x/,下载地址:http://hc.apache.org/downloads.cgi,本人下载的是  HttpClient 4.0.1 (GA)

 

首先声明一下,下载包里面有现成的例子,貌似4.0 和以前的版本差别很大,因为在网上找的别的例子,在4.0版本里面连一些类都找不到了

Java代码 
  1. import org.apache.http.HttpEntity;  
  2. import org.apache.http.HttpResponse;  
  3. import org.apache.http.client.HttpClient;  
  4. import org.apache.http.client.methods.HttpGet;  
  5. import org.apache.http.impl.client.DefaultHttpClient;  
  6.   
  7. public class ClientAbortMethod {  
  8.   
  9.     public final static void main(String[] args) throws Exception {  
  10.         HttpClient httpclient = new DefaultHttpClient();  
  11.   
  12.         HttpGet httpget = new HttpGet("http://www.apache.org/");   
  13.   
  14.         System.out.println("executing request " + httpget.getURI());  
  15.         HttpResponse response = httpclient.execute(httpget);  
  16.         HttpEntity entity = response.getEntity();  
  17.   
  18.         System.out.println("----------------------------------------");  
  19.         System.out.println(response.getStatusLine());  
  20.         if (entity != null) {  
  21.             BufferedReader reader = new BufferedReader(  
  22.                     new InputStreamReader(entity.getContent()));  
  23.            String str = null;  
  24.            if(null != (str = reader.readLine()) ){  
  25.                System.out.println(str);  
  26.             }  
  27.   
  28.         }  
  29.         System.out.println("----------------------------------------");  
  30.   
  31.         httpget.abort();  
  32.           
  33.         httpclient.getConnectionManager().shutdown();          
  34.     }  
  35.   
  36. }  

 作用:可以搭配使用在短信发送等功能上。

代码中有未引入的类和异常,大家自己处理一下就OK了

如此便可打印出网页所有源代码,当然这只是最简单的一种情况

 使用的时候除了要加入http-client.jar包之外,还需要commons-logging.jar包,大家直接从lib文件夹下面copy进去就OK了

原创粉丝点击