HttpClient 是apache 组织下面的一个用于处理HTTP 请求和响应的开源工具。所用jar包为httpclient-4.3.6.jar、httpcore-4.3.3.jar、httpmime-4.3.6.jar、commons-codec-1.6.jar。

发送Get请求代码如下:

package com.zkn.newlearn.httpclient;

import java.io.BufferedReader;

import java.io.IOException;

import java.io.InputStream;

import java.io.InputStreamReader;

import java.util.List;

import org.apache.http.Consts;

import org.apache.http.HttpEntity;

import org.apache.http.NameValuePair;

import org.apache.http.ParseException;

import org.apache.http.client.entity.UrlEncodedFormEntity;

import org.apache.http.client.methods.CloseableHttpResponse;

import org.apache.http.client.methods.HttpGet;

import org.apache.http.impl.client.CloseableHttpClient;

import org.apache.http.impl.client.HttpClients;

import org.apache.http.message.BasicNameValuePair;

import org.apache.http.util.EntityUtils;

import com.google.common.collect.Lists;

public class HttpClientTest02 {

public static void main(String[] args) {

CloseableHttpClient httpClient = HttpClients.createDefault();

CloseableHttpResponse response = null;

InputStream is = null;

String url = "http://localhost:8080/MyWebxTest/getCityByProvinceEname.do";

//封装请求参数

List params = Lists.newArrayList();

params.add(new BasicNameValuePair("cityEname", "henan"));

String str = "";

try {

//转换为键值对

str = EntityUtils.toString(new UrlEncodedFormEntity(params, Consts.UTF_8));

System.out.println(str);

//创建Get请求

HttpGet httpGet = new HttpGet(url+"?"+str);

//执行Get请求,

response = httpClient.execute(httpGet);

//得到响应体

HttpEntity entity = response.getEntity();

if(entity != null){

is = entity.getContent();

//转换为字节输入流

BufferedReader br = new BufferedReader(new InputStreamReader(is, Consts.UTF_8));

String body = null;

while((body=br.readLine()) != null){

System.out.println(body);

}

}

} catch (ParseException e) {

e.printStackTrace();

} catch (IOException e) {

e.printStackTrace();

} finally{

//关闭输入流,释放资源

if(is != null){

try {

is.close();

} catch (IOException e) {

e.printStackTrace();

}

}

//消耗实体内容

if(response != null){

try {

response.close();

} catch (IOException e) {

e.printStackTrace();

}

}

//关闭相应 丢弃http连接

if(httpClient != null){

try {

httpClient.close();

} catch (IOException e) {

e.printStackTrace();

}

}

}

}

}

java发送get请求参数_HttpClient发送带参数的Get请求相关推荐

  1. java http post 传参数_HttpClient之带参数的post请求

    具体代码: package cn.itcast.crawler.test; import org.apache.http.HttpEntity; import org.apache.http.Name ...

  2. post带参的请求与post不带参数的请求

    post不带参数的请求 [{"description": "这是一个post不带参的请求","request": {"uri&qu ...

  3. 使用Spyder控制台(console)执行带参数脚本和带参数的debug模式

    使用Spyder控制台(console)执行带参数脚本和带参数的debug模式 很多python脚本运行时要加入参数,在spyder的控制台中运行会更加方便. 比如,运行某个脚本: run visua ...

  4. python装饰器带参数函数_python带参数装饰器的两种写法

    python带参数装饰器的两种写法 前言 最近在实现一个装饰器的过程中发现了一个很有意思的地方,在博客里面分享出来 不同的写法 三层函数嵌套,实现了可传参数的一个装饰器. import logging ...

  5. Java 微信开发(四)生成带参数二维码及分享到朋友圈、好友、QQ

    微信公众号中的微信分享到朋友圈.分享到QQ.分享到好友功能都是可以帮助营销活动支持的,今天就说一下公众号生成带参数的二维码分享到朋友圈功能 根据微信公众号提供的开发者文档我们可以看出提供的有方法,我们 ...

  6. JAVA 实现微信公众号的生成带参数二维码和扫码后被动回复消息

    公司新需求实现生成微信公众号带参数二维码和对应扫码后回复相应信息的功能. 1.实现带参数二维码功能 public class QrTest {private static Logger logger ...

  7. Java微信公众号开发之创建带参数二维码

    生成带参数二维码接口文档:生成带参数二维码 一.介绍 1.1.目前有2种类型的二维码: 1. 临时二维码:临时二维码,是有过期时间的,最长可以设置为在二维码生成后的30天(即2592000秒)后过期, ...

  8. Java 方法的概述-方法的定义-带参数的方法

    方法概述 方法(method)是将具有独立功能的代码块组织成为一个整体,使其具有特殊功能的代码集1.方法必须先创建才可以使用,该过程成为方法定义 2.方法创建后并不是直接可以运行的,需要手动使用后才执 ...

  9. SpringMVC——重定向(不带参数重定向、带参数重定向、FlashAttribute、RedirectAttribute)

    SpringMVC Controller间跳转,需重定向. 分三种情况:(1)不带参数跳转(2)带参数拼接url形式跳转(3)带参数不拼接参数跳转,页面也能显示. 1.不带参数重定向 需求:在列表页面 ...

  10. mysql宏参数_C语言带参数的宏定义

    C语言允许宏带有参数.在宏定义中的参数称为"形式参数",在宏调用中的参数称为"实际参数",这点和函数有些类似. 对带参数的宏,在展开过程中不仅要进行字符串替换, ...

最新文章

  1. 33 多线程同步之Condition
  2. matlab引擎函数,Matlab引擎库函数
  3. 北京交大计算机学院院长,蔡伯根(北京交大教授)
  4. mysql表的relationship_sqlalchemy 配置多连接读写库后的relationship设置
  5. 《JavaScript开发框架权威指南》——1.4 查找、添加和删除Bower包
  6. 深度分析《英雄联盟》游戏运营商背后的大数据支撑体系
  7. python 100以内3的倍数_在python中确定3或5的倍数
  8. 【转载】软件质量报告模板-产品质量度量
  9. 整理 Go 语言中 20 个占位符!
  10. 寒门如何出贵子(摘抄)
  11. SDN基础入门学习一
  12. 转行面试,跳槽面试,软件测试人员都必须知道的这几种面试技巧
  13. 大数据之Hadoop简介及环境搭建
  14. DEVC++小游戏狼人杀
  15. 防火墙软件Netfilter之包过滤技术(转)
  16. 万字长文读懂SaaS的中国版图、问题及趋势
  17. Centos7 -samba服务配置
  18. Minecraft 1.16.5 生化8 模组(重制版) 自行火炮登场
  19. QT常用布局layout快速入门
  20. 华科计算机组成原理 头歌Educoder Logisim 计算机数据表示实验(HUST) 1~9关满分通关

热门文章

  1. 如何设计适合平板电脑浏览的网站
  2. 工业领域:PLC和SCADA的区别和关系
  3. 去掉String中空格
  4. JAVA_匿名内部类
  5. 大数据Kettle实时同步数据的六种方案
  6. 怀疑开发者在“造核弹”?GitHub不断封禁开源项目
  7. 抖音新锐发布:瞄准这届看脸的年轻人,找到唤醒“少年感”的密码
  8. 一句话把人逗乐的经典 ZT
  9. NX open中关于图层的常用UF操作(1)
  10. 如何给照片换背景?怎么用手机更换证件照背景颜色