Httpclient介绍及使用
来源:互联网 发布:如何卸载mysql数据库 编辑:程序博客网 时间:2024/05/22 16:44
一、什么是httpclient
HTTP 协议可能是现在 Internet 上使用得最多、最重要的协议了,越来越多的 Java 应用程序需要直接通过 HTTP 协议来访问网络资源。虽然在 JDK 的 java net包中已经提供了访问 HTTP 协议的基本功能,但是对于大部分应用程序来说,JDK 库本身提供的功能还不够丰富和灵活。HttpClient 是 Apache Jakarta Common 下的子项目,用来提供高效的、最新的、功能丰富的支持 HTTP 协议的客户端编程工具包,并且它支持 HTTP 协议最新的版本和建议。现在地址http://hc.apache.org 打开要点时间,等待一会就行了。
二、功能介绍
以下列出的是 HttpClient 提供的主要的功能,要知道更多详细的功能可以参见 HttpClient 的主页。
(1)实现了所有 HTTP 的方法(GET,POST,PUT,HEAD 等)
(2)支持自动转向
(3)支持 HTTPS 协议
(4)支持代理服务器等
三、导入依赖
需要把httpclient的jar包添加到工程中,并且在配置文件中添加依赖
<!-- httpclient --> <dependency> <groupId>org.apache.httpcomponents</groupId> <artifactId>httpclient</artifactId> </dependency>
四、使用方法
1.使用httpclient执行get请求
@Test public void doGet() throws Exception { //创建一个httpclient对象 CloseableHttpClient httpClient = HttpClients.createDefault(); //创建一个GET对象 HttpGet get = new HttpGet("http://www.baidu.com"); //执行请求 CloseableHttpResponse response = httpClient.execute(get); //取响应的结果 int statusCode = response.getStatusLine().getStatusCode(); System.out.println(statusCode); HttpEntity entity = response.getEntity(); String string = EntityUtils.toString(entity, "utf-8"); System.out.println(string); //关闭httpclient response.close(); httpClient.close(); }
2.执行get请求带参数
public void doGetWithParam() throws Exception{ //创建一个httpclient对象 CloseableHttpClient httpClient = HttpClients.createDefault(); //创建一个uri对象 URIBuilder uriBuilder = new URIBuilder("http://www.sogou.com/web"); uriBuilder.addParameter("query", "晓太白"); HttpGet get = new HttpGet(uriBuilder.build()); //执行请求 CloseableHttpResponse response = httpClient.execute(get); //取响应的结果 int statusCode = response.getStatusLine().getStatusCode(); System.out.println(statusCode); HttpEntity entity = response.getEntity(); String string = EntityUtils.toString(entity, "utf-8"); System.out.println(string); //关闭httpclient response.close(); httpClient.close(); }
3.使用httpclient执行post请求
public void doPost() throws Exception { CloseableHttpClient httpClient = HttpClients.createDefault(); //创建一个post对象 HttpPost post = new HttpPost("http://localhost:8082/httpclient/post.html"); //执行post请求 CloseableHttpResponse response = httpClient.execute(post); String string = EntityUtils.toString(response.getEntity()); System.out.println(string); response.close(); httpClient.close(); }
3.使用httpclient执行带参数的post请求
@Test public void doPostWithParam() throws Exception{ CloseableHttpClient httpClient = HttpClients.createDefault(); //创建一个post对象 HttpPost post = new HttpPost("http://localhost:8082/httpclient/post.html"); //创建一个Entity。模拟一个表单 List<NameValuePair> kvList = new ArrayList<>(); kvList.add(new BasicNameValuePair("username", "zhangsan")); kvList.add(new BasicNameValuePair("password", "123")); //包装成一个Entity对象 StringEntity entity = new UrlEncodedFormEntity(kvList, "utf-8"); //设置请求的内容 post.setEntity(entity); //执行post请求 CloseableHttpResponse response = httpClient.execute(post); String string = EntityUtils.toString(response.getEntity()); System.out.println(string); response.close(); httpClient.close(); }
阅读全文
0 0
- Httpclient介绍及使用
- HttpClient介绍及入门案例
- HttpClient使用及注意事项
- (HttpClient技术)(HttpClient入门)HttpClient使用详细介绍
- HttpClient简单封装及使用
- HTTPClient介绍
- httpclient介绍
- HttpClient介绍
- HttpClient介绍
- httpclient介绍
- HttpClient介绍
- HttpClient介绍
- HttpClient介绍
- HttpClient介绍
- HttpClient介绍
- 赠送 HttpClient 和HttpURLConnection 的轻型网络框架 ---》使用介绍
- dbunit介绍及使用
- VRPN介绍及使用
- BootStrap(2)——图片、辅助类、响应式工具、表单
- MySQL(二)yum源与rpm包方式安装
- 走进大前端:AngularJS 仿拉勾网 WebApp 开发移动端单页应用
- Oracle的常用SQL语句
- 画饼
- Httpclient介绍及使用
- 滚动条(2)
- CSDN开设博客专栏的方法
- 解决css中hover做遮盖罩闪动问题
- Windows socket通信出现接收数据时出现recv返回大于0,但缓冲区为大小为0的问题
- 7.3调用函数求最大值
- Dht11与Ds18b20温度传感器使用
- 通过金矿模型介绍动态规划
- MySQL(三)二进制方式安装