关于java实现http请求工具类示例
来源:才华咖 本文已影响4.24K人
来源:才华咖 本文已影响4.24K人
通过http rest请求返回数据
复制代码 代码如下:
import ;
import actory;
import ValuePair;
import ntProtocolException;
import Client;
import onseHandler;
import ncodedFormEntity;
import Get;
import Post;
import cResponseHandler;
import ultHttpClient;
import adSafeClientConnManager;
import ception;
import ageFormat;
import ;
import Unit;
/**
* 分装一个http请求的.工具类
*
* @author 顾炜【guwei】 on 14-4-22.下午3:17
*/
public class HttpClientUtils {
private static final Log log = og(s);
/**
* 初始化HttpClient
*/
private static HttpClient httpClient = null;
/**
* 生产HttpClient实例
* 公开,静态的工厂方法,需要使用时才去创建该单体
*
* @return
*/
public static HttpClient getHttpClient() {
if (httpClient == null) {
httpClient = new DefaultHttpClient(new ThreadSafeClientConnManager());
}
return httpClient;
}
/**
* POST方式调用
*
* @param url
* @param params 参数为NameValuePair键值对对象
* @return 响应字符串
* @throws pportedEncodingException
*/
public static String executeByPOST(String url, Listparams) {
HttpClient httpclient = getHttpClient();
HttpPost post = new HttpPost(url);
ResponseHandlerresponseHandler = new BasicResponseHandler();
String responseJson = null;
try {
if (params != null) {
ntity(new UrlEncodedFormEntity(params));
}
responseJson = ute(post, responseHandler);
("HttpClient POST请求结果:" + responseJson);
} catch (ClientProtocolException e) {
tStackTrace();
("HttpClient POST请求异常:" + essage());
} catch (IOException e) {
tStackTrace();
} finally {
onnectionManager()eExpiredConnections();
onnectionManager()eIdleConnections(30, NDS);
}
return responseJson;
}
/**
* Get方式请求
*
* @param url 带参数占位符的URL,例:http://****/User/user/{0}&email={1}
* @param params 参数值数组,需要与url中占位符顺序对应
* @return 响应字符串
* @throws pportedEncodingException
*/
public static String executeByGET(String url, Object[] params) {
HttpClient httpclient = getHttpClient();
String messages = at(url, params);
HttpGet get = new HttpGet(messages);
ResponseHandlerresponseHandler = new BasicResponseHandler();
String responseJson = null;
try {
responseJson = ute(get, responseHandler);
("HttpClient GET请求结果:" + responseJson);
} catch (ClientProtocolException e) {
tStackTrace();
("HttpClient GET请求异常:" + essage());
} catch (IOException e) {
tStackTrace();
("HttpClient GET请求异常:" + essage());
} finally {
onnectionManager()eExpiredConnections();
onnectionManager()eIdleConnections(30, NDS);
}
return responseJson;
}
/**
* @param url
* @return
*/
public static String executeByGET(String url) {
HttpClient httpclient = getHttpClient();
HttpGet get = new HttpGet(url);
ResponseHandlerresponseHandler = new BasicResponseHandler();
String responseJson = null;
try {
responseJson = ute(get, responseHandler);
("HttpClient GET请求结果:" + responseJson);
} catch (ClientProtocolException e) {
tStackTrace();
("HttpClient GET请求异常:" + essage());
} catch (IOException e) {
tStackTrace();
("HttpClient GET请求异常:" + essage());
} finally {
onnectionManager()eExpiredConnections();
onnectionManager()eIdleConnections(30, NDS);
}
return responseJson;
}
}
分析JavaScript类型系统之Math
关于php中hashtable实现示例
Javascript实例教程如何使用HoTMetal
有关javascript实现的多个层切换效果通用函数示例
使用JavaScript实现Java的List功能
Python和JavaScript语言转换的常用工具
java环境变量path和classpath的配置过程
Java Socket应答与HTTP服务器的关系
Javascript到PHP加密通讯的简单实现
php和javascript之间变量的传递实现代码
JAVA如何获取HTTP请求头
javascript定义类和类的实现举例说明
Java中hashmap和hashtable的区别
Javascript到PHP加密通讯的简单实现方法
Java import以及Java类的搜索路径
深入解析hashmap,java实现原理
关于JavaScript中isPrototypeOf函数作用和使用实例
理解java和python类变量
关于出具证明的请示(精选多篇)
Javascript简单实现面向对象编程继承实例代码
Javascript实现全选并赋值给文本框代码实例
关于JAVA实现httpClient的实例
java设置path环境变量
java环境变量path设置
Java语言第一个javaapplet
java环境变量设置path
javascript中的match函数用法简介
关于Hibernate应用中Java对象的状态类型
Java如何通过Socket实现TCP服务端
关于请求辞职的请示
Javamatcher类的方法
关于java 四舍五入使java保留2位小数示例讲解
用 Javascript 实现锚点(Anchor)间平滑跳转
JavaScript与java语言有何区别
JavaScript中的with关键字
关于召开例会的请示
对Java中HashMap和TreeMap的区别的深入理解
java与JavaScript语言有何不同
JavaScript与java语言有何不同
The Best Thing That Could Ever Happen少儿双语阅读