使用HttpClient进行Get通信
--------------siwuxie095
首先到 Apache官网 下载相关的库文件
Apache官网:http://www.apache.org/
在官网页面的最下方是
Apache 所支持的所有项目列表(APACHE PROJECT LIST)
找到
HttpComponents,点击进入,选择 Download,下载
HttpClient 4.5.3(GA) 版本(截止 2017/3/31 最新 GA 版本)
页面链接:http://hc.apache.org/downloads.cgi
httpcomponents-client-4.5.3-bin.zip
解压后一览:
工程名:TestHttpClient
包名:com.siwuxie095.httpclient
类名:TestGet.java
打开资源管理器,在工程 TestHttpClient 文件夹下,创建一个
文件夹:lib,在其中放入:
(1)httpclient-4.5.3.jar
(2)httpcore-4.4.6.jar
(3)commons-logging-1.2.jar
工程结构目录一览:
全选这 3 个
jar 包(利用 Shift 全选),右键->Build Path->Add to Build Path
此时,工程结构目录一览:
代码:
package com.siwuxie095.httpclient; import java.io.IOException; import org.apache.http.HttpEntity; import org.apache.http.HttpResponse; import org.apache.http.client.ClientProtocolException; import org.apache.http.client.HttpClient; import org.apache.http.client.methods.HttpGet; import org.apache.http.impl.client.HttpClients; import org.apache.http.util.EntityUtils; public class TestGet { public static
//运行线程 Get,使用匿名对象 new Get().start(); } } //创建线程 Get class Get extends Thread{
//创建一个HttpClient,使用静态方法调用类HttpClients的reateDefault() //获取一个新的实例 HttpClient client=HttpClients.createDefault();
//复写run() @Override public //创建一个HttpGet,传入String:要获取的网页 HttpGet get=new HttpGet("http://www.baidu.com");
try {
//通过HttpGet指定get操作后,让HttpClient执行get操作 //execute()返回HttpResponse类型,创建以接收返回值 //有异常抛出,使用 try catch 捕获 HttpResponse response=client.execute(get);
//从response中获取当前请求的结果 //getEntity()返回HttpEntity类型,创建以接收返回值 HttpEntity entity=response.getEntity();
//将entity返回成一个String类型 //调用类EntityUtils的静态方法toString(), //传入entity的同时,指定转换为字符串时使用的编码 String result=EntityUtils.toString(entity, "UTF-8");
//打印结果,输出为 HTML 数据 System.out.println(result);
} catch (ClientProtocolException e) { e.printStackTrace(); } catch (IOException e) { e.printStackTrace(); }
} } |
运行一览:
将输出的 HTML 数据,复制->粘贴->格式化:
【made by siwuxie095】
使用HttpClient进行Get通信的更多相关文章
- 使用HttpClient进行Post通信
---------------siwuxie095 首先到 Apache官网 下载相关的库文件 Apache官网:http://www.apac ...
- Android中使用HttpClient实现HTTP通信效果
HTTP通信,这一案例在操作的时候遇到N多种种问题,是前面看过几个实例里面最麻烦的一个.由于没有系统的接触过JAVA,所以出了非常多错误,也无从下手解决,这里经过对错误的检索实现了HTTP通信,以做记 ...
- Android之实战篇(三)
先给出我们用到的工具类 1.发送请求的工具类 本实例采用HttpClient与服务器通信,用到了一个工具类对Httpclient进行封装:定义了两个方法来发送请求 getRequest:发送GET请求 ...
- [android] android项目架构
准备步骤: 1.创建工程(设置版本兼容,最低兼容版本) 2.导入常用jar包,(处理字符串和加密用的jar文件) Commons Lang,Commons Codec commons-codec.ja ...
- Android使用ImageView显示网络图片
本案例使用ImageView 简单的实现了网络图片的调用.当中注意事项.由于用到了网络,这里採用了HttpClient方法訪问网络联接,关于怎样使用,可參照文章 Android中使用HttpClien ...
- 7.20实习培训日志-Java基础程序设计结构
Java基础程序设计结构 在 Math 类中,为了达到最快的性能,所有的方法都使用计算机浮点单元中的例程,如果得到一个完全可预测的结果比运行速度更重要的话,那么就应该使用StrictMath类,它使用 ...
- Windows 10开发基础——网络编程
主要内容: HttpClient类 Socket通信 WCF通信 HttpClient类 在UWP中可以用来进行网络通信的HttpClient类有两个,System.Net.Http.Htt ...
- bugzilla4的xmlrpc接口api调用实现分享: xmlrpc + https + cookies + httpclient +bugzilla + java实现加密通信下的xmlrpc接口调用并解决登陆保持会话功能
xmlrpc . https . cookies . httpclient.bugzilla . java实现加密通信下的xmlrpc接口调用并解决登陆保持会话功能,网上针对bugzilla的实现很 ...
- 重新想象 Windows 8.1 Store Apps (88) - 通信的新特性: 新的 HttpClient
[源码下载] 重新想象 Windows 8.1 Store Apps (88) - 通信的新特性: 新的 HttpClient 作者:webabcd 介绍重新想象 Windows 8.1 Store ...
随机推荐
- webdriver处理鼠标右键菜单栏
selenium中ActionChains类提供了鼠标操作的常用方法,但对于鼠标右键的菜单栏,无论是send_keys(Keys.ARROW_DOWN)还是send_keys("K" ...
- Python中的Unicode编码和UTF-8编码
下午看廖雪峰的Python2.7教程,看到 字符串和编码 一节,有一点感受,结合崔庆才的Python博客 ,把这种感受记录下来: ASCII码:是用一个字节(8bit, 0-255)中的127个字母表 ...
- 1008 Envy(好题¥)
1008: Envy 时间限制: 1 Sec 内存限制: 128 MB提交: 288 解决: 61[提交][状态][讨论版] 题目描述 今年的 ACM 比赛推出了一个赛后的娱乐活动,所有参赛选手排 ...
- Hive数据导入——数据存储在Hadoop分布式文件系统中,往Hive表里面导入数据只是简单的将数据移动到表所在的目录中!
转自:http://blog.csdn.net/lifuxiangcaohui/article/details/40588929 Hive是基于Hadoop分布式文件系统的,它的数据存储在Hadoop ...
- mysql出现mysql server has gone away错误的解决办法
应用程序(比如PHP)长时间的执行批量的MYSQL语句.执行一个SQL,但SQL语句过大或者语句中含有BLOB或者longblob字段.比如,图片数据的处理.都容易引起MySQLserver has ...
- DedeCMS织梦模板标签调用大全
本文转载:http://www.mubanzhijia.com/jishujiaocheng/1.html 关键描述调用标签: <meta name="keywords" c ...
- PADS Layout CAM 的中高级焊盘选项
PADS Layout CAM 的中高级焊盘选项 PADS CAM Gerber 输出非常灵活. 以至于很多人跳坑. 以这个这选项,最好的方式就是不勾.
- selenium+headless chrome安装使用
pip install selenium 因为phantomJS将停止维护,所以建议使用headless chromeChromeDriver is a separate executable tha ...
- MySQL 采用Xtrabackup对数据库进行全库备份
1,xtrabackup简介 关于数据库备份以及备份工具,参考:http://blog.itpub.net/26230597/viewspace-1460065/,这里来介绍xtrabackup已经如 ...
- Hybrid APP混合开发
写在前面: 由于业务需要,接触到一个Hybrid APP混合开发的项目.当时是第一次接触混合开发,有一些经验和总结,欢迎各位一起交流学习~ 1.混合开发概述 Hybrid App主要以JS+Nativ ...