从HttpClient3迁移到HttpClient4
网上很多HttpClient的学习源码都是3版本的,不过,既然现在HttpClient已经升级成Apache的顶级项目,自然想使用新版本。但是4版本完全是重新编写,而不能向下兼容。所以在学习调试源码时,利用的4的库,就不能直接运行3.1下的源码。
- jar包的变更,可以在此下载最新的jar包:http://hc.apache.org/downloads.cgi
- 把org.apache.commons.httpclient.*修改到import org.apache.http.*。具体变更哪些,就要看利用了HttpClient的哪些功能
比如:Java代码- import org.apache.commons.httpclient.HttpClient;
- import org.apache.commons.httpclient.HttpStatus;
- import org.apache.commons.httpclient.HttpException;
- import org.apache.commons.httpclient.methods.GetMethod;
- import org.apache.commons.httpclient.ConnectTimeoutException;
To
Java代码- import org.apache.http.client.HttpClient;
- import org.apache.http.HttpStatus;
- import org.apache.http.HttpException;
- import org.apache.http.client.methods.HttpGet;
- import org.apache.http.conn.ConnectTimeoutException;
- import org.apache.http.HttpResponse;
- import org.apache.http.impl.client.DefaultHttpClient;
- 使用的各个HttpClient的功能的代码修改。这部分的整理,在使用过程中慢慢补全。本次先介绍Get方法的修改。
- GetMethod method = new GetMethod(url);
- int statusCode = client.executeMethod(method);
- if (statusCode == HttpStatus.SC_OK) {
- InputStream is = method.getResponseBodyAsStream();
- // do something with the input stream
- }
- method.releaseConnection();
- HttpGet method = new HttpGet(url);
- HttpResponse httpResponse = client.execute(method);
- int statusCode = httpResponse.getStatusLine().getStatusCode();
- if (statusCode == HttpStatus.SC_OK) {
- InputStream is = httpResponse.getEntity().getContent();
- // do something with the input stream
- }
从HttpClient3迁移到HttpClient4相关推荐
- Meter应用中对于中文乱码的主要解决方法(转)
SampleResult中的中文乱码解决方法 对jmeter.properties进行设置,从jmeter.properties配置文件中可以找到如下行: # The encoding to be u ...
- 大众点评支付渠道网关系统的实践之路
业务的快速增长,要求系统在快速迭代的同时,保持很好的扩展性和可用性.其中,交易系统除了满足上述要求之外,还必须保持数据的强一致性.对系统开发人员而言,这既是机遇,也是挑战.本文主要梳理大众点评支付渠道 ...
- 支付渠道网关系统的实践之路
http://www.tuicool.com/articles/rIbUzyj 业务的快速增长,要求系统在快速迭代的同时,保持很好的扩展性和可用性.其中,交易系统除了满足上述要求之外,还必须保持数据的 ...
- ElasticSearch03_Mapping字段映射、常用类型、数据迁移、ik分词器、自定义分词器
文章目录 ①. Mapping字段映射概述 ②. 常用类型如下 - text.keyword ③. 映射中对时间类型详解 ④. ES的keyword的属性ignore_above ⑤. 映射的查看.创 ...
- 商城项目18_esMapping字段映射、常用类型、数据迁移、ik分词器、自定义分词器
文章目录 ①. Mapping字段映射概述 ②. 常用类型如下 - text.keyword ③. 映射中对时间类型详解 ④. ES的keyword的属性ignore_above ⑤. 映射的查看.创 ...
- 实践练习四(必选):迁移 MySQL 数据到 OceanBase 集群
OceanBase Docker安装体验:https://www.xmmup.com/oceanbase-dockeranzhuangtiyan.html 手动部署 OceanBase 单副本集群:h ...
- httpclient4 请一定设置超时时间
httpclient4的设置方式和httpclient3有所不同,代码如下: HttpClient httpclient = new DefaultHttpClient(); httpclient.g ...
- 容器云原生DevOps学习笔记——第二期:如何快速高质量的应用容器化迁移
暑期实习期间,所在的技术中台-效能研发团队规划设计并结合公司开源协同实现符合DevOps理念的研发工具平台,实现研发过程自动化.标准化: 实习期间对DevOps的理解一直懵懵懂懂,最近观看了阿里专家带 ...
- PyTorch迁移学习
PyTorch迁移学习 实际中,基本没有人会从零开始(随机初始化)训练一个完整的卷积网络,因为相对于网络,很难得到一个足够大的数据集[网络很深, 需要足够大数据集].通常的做法是在一个很大的数据集上进 ...
- VGG16迁移学习实现
VGG16迁移学习实现 本文讨论迁移学习,它是一个非常强大的深度学习技术,在不同领域有很多应用.动机很简单,可以打个比方来解释.假设想学习一种新的语言,比如西班牙语,那么从已经掌握的另一种语言(比如英 ...
最新文章
- ASP.NET夜话笔记06
- JTStackController
- 专栏 | 基于 Jupyter 的特征工程手册:特征选择(五)
- 【NOI2016】优秀的拆分【后缀数组】【ST表】【关键点】【调和级数复杂度】【差分】
- 部署mysql MHA集群
- HTC vive开发
- chrome插件“京东商品佣金助手”之京东云java web环境搭建(二)
- 小米选择了总是打开方式_小米更改默认程序 小米修改默认程序的打开方式
- 《UML系统分析与设计》习题答案
- 【C++设计模式】建造者模式
- 如何对自动驾驶技术进行全面检验?
- Bootstrap 导航/滑动门(nav)
- http post muti form
- 齐商银行计算机岗面试题,2018齐商银行社会招聘笔试(真题笔经)
- 香港虚拟主机与国内虚拟主机区别
- 【数字化】“网络效应”指南:13 种网络效应全解析,带你了解巨头成功的秘密
- Android面试资料整理
- sonic云真机通过linux系统接入苹果手机
- 【目标检测】目标检测中常见的评价指标
- 智能导航、车载影院、4A级游戏体验…GPU重新定义未来汽车