HttpClient调试android接口-通用方法
来源:互联网 发布:贵妃醉酒伴奏网络 编辑:程序博客网 时间:2024/04/24 14:22
最近公司要我调试android接口,就封装了一下,记录下来。。做为笔记吧!
package com.dw.test;public class User { private String id; private String username; private String password; public String getId() {return id;}public void setId(String id) {this.id = id;}public String getUsername() {return username;}public void setUsername(String username) {this.username = username;}public String getPassword() {return password;}public void setPassword(String password) {this.password = password;}@Overridepublic String toString() {return "User [id=" + id + ", username=" + username + ", password="+ password + "]";}}
package com.dw.util;import java.util.List;import net.sf.json.JSONArray;import org.apache.http.HttpEntity;import org.apache.http.NameValuePair;import org.apache.http.client.entity.UrlEncodedFormEntity;import org.apache.http.client.methods.CloseableHttpResponse;import org.apache.http.client.methods.HttpPost;import org.apache.http.impl.client.CloseableHttpClient;import org.apache.http.impl.client.HttpClients;import org.apache.http.util.EntityUtils;public class HttpClientUtil<T> {/** * post请求方法, 返回一个对象集合 * * @param url 请求的url * @param objectClass class对象,你想要返回的对象 * @param formparams 请求参数 * @return List<T> 返回对象集合 * @throws Exception */@SuppressWarnings({ "rawtypes", "unchecked" })public List<T> getListPost(String url, Class objectClass,List<NameValuePair> formparams) throws Exception {// 创建默认的httpClient实例.CloseableHttpClient httpclient = HttpClients.createDefault();List<T> objList = null;try {// 创建httppostHttpPost httppost = new HttpPost(url);// 设置请求的表单编码UrlEncodedFormEntity uefEntity = new UrlEncodedFormEntity(formparams, "UTF-8");// 设置http请求参数httppost.setEntity(uefEntity);System.out.println("executing request " + httppost.getRequestLine());// 发送请求CloseableHttpResponse response = httpclient.execute(httppost);// 请求响应码int code = response.getStatusLine().getStatusCode();if (code == 200) {try {// 获取响应的数据HttpEntity entity = response.getEntity();if (entity != null) {String json = EntityUtils.toString(entity, "UTF-8");System.out.println("Response content: " + json);JSONArray jsonobj = JSONArray.fromObject(json);objList = (List<T>) JSONArray.toCollection(jsonobj,objectClass);}} finally {response.close();}} else {System.out.println("请求失败!");}} finally {httpclient.close();}return objList;}/** * post请求方法, 返回一个对象 * * @param url 请求的url * @param objectClass class对象,你想要返回的对象 * @param formparams 设置请求参数 * @return T 返回对象 * @throws Exception */@SuppressWarnings({ "rawtypes", "unchecked" })public T getObjPost(String url, Class objectClass,List<NameValuePair> formparams) throws Exception {// 创建默认的httpClient实例.CloseableHttpClient httpclient = HttpClients.createDefault();T obj = null;try {// 创建httppostHttpPost httppost = new HttpPost(url);// 设置请求的表单编码UrlEncodedFormEntity uefEntity = new UrlEncodedFormEntity(formparams, "UTF-8");// 设置http请求参数httppost.setEntity(uefEntity);System.out.println("executing request " + httppost.getRequestLine());// 发送请求CloseableHttpResponse response = httpclient.execute(httppost);// 请求响应码int code = response.getStatusLine().getStatusCode();if (code == 200) {try {// 获取响应的数据HttpEntity entity = response.getEntity();if (entity != null) {String json = EntityUtils.toString(entity, "UTF-8");System.out.println("Response content: " + json);JSONArray jsonobj = JSONArray.fromObject(json);List<T> objList = (List<T>) JSONArray.toCollection(jsonobj, objectClass);if (objList != null && objList.size() > 0) {if (objList.size() <= 1) {obj = objList.get(0);}}}} finally {response.close();}} else {System.out.println("请求失败!");}} finally {httpclient.close();}return obj;}}
package com.dw.util;import java.util.ArrayList;import java.util.List;import org.apache.http.NameValuePair;import org.apache.http.message.BasicNameValuePair;import org.junit.After;import org.junit.Before;import org.junit.Test;import com.dw.test.User;public class HttpClientTest { private static HttpClientUtil<User> http = null; private static List<NameValuePair> formparams = null; @Before public void newUser() { http = new HttpClientUtil<User>(); formparams = new ArrayList<NameValuePair>(); } @After public void clerformparams() { formparams = null; } @Test public void postListTest() throws Exception { //请求参数 formparams.add(new BasicNameValuePair("names", "邓文伟")); formparams.add(new BasicNameValuePair("password", "123")); List<User> listUser = http.getListPost( "http://localhost:8080/testPlatform/indexs.htm", User.class, formparams); System.out.println(listUser); } @Test public void postUserTest() throws Exception { //请求参数 formparams.add(new BasicNameValuePair("names", "邓文伟")); formparams.add(new BasicNameValuePair("password", "123")); User user= http.getObjPost( "http://localhost:8080/testPlatform/indexs.htm", User.class, formparams); System.out.println(user.getUsername()); }}
代码和jar包:http://download.csdn.net/detail/dengwenwei121/8168261
0 0
- HttpClient调试android接口-通用方法
- android 通用wifi调试 应用方法
- Android HttpClient接口
- Fiddler 教程& httpclient调试方法
- Android 设备 USB 通用调试驱动的安装方法
- 基于HttpClient 4.3的通用POST方法
- android HttpClient接口的使用
- android登陆接口调试
- Android开发之Http通信HttpClient接口
- Android 的网络编程(4)-HttpClient接口
- Android:使用HttpClient接口实现网络通信
- android org.apache.commons.httpclient 调试
- 通用Mapper接口方法以及说明
- #保护用虚拟机调试通用方法
- 保护用虚拟机调试通用方法
- 调试接口的一些方法
- 通用httpclient生成方式
- Android系统设置通用接口的编写
- [2014-11-17]Java笔记_装饰模式(Decorator)
- HDU 5107 线段树扫描线
- 接口和抽象类的区别 --相信你看完不会再混淆了
- Linux ALSA声卡驱动之三:PCM设备的创建
- Subsets
- HttpClient调试android接口-通用方法
- 《Java虚拟机原理图解》3、JVM运行时数据区
- iOS中常用的四种数据持久化方法简介
- 开发一个WebService客户端应用程序——2
- Linux ALSA声卡驱动之四:Control设备的创建
- Xib和Nib
- Git fetch和git pull的区别
- 二叉树后序遍历非递归
- 手机端网页web开发要点