通过HttpClient获取服务器接口json数据已及解析

转自:http://blog.csdn.net/u014614038/article/details/49800709

1.获取服务器接口数据方法:记得导入httpclient包

http://download.csdn.net/detail/china1988s/3791514

[java]  view plain  copy
 print ?
  1. public static String getdata(String url, List params) {  
  2.         String tag = "";  
  3.         HttpClient httpClient = new DefaultHttpClient();  
  4.         HttpPost post = new HttpPost(url);  
  5.           
  6.   
  7.         try {  
  8.             UrlEncodedFormEntity entity = new UrlEncodedFormEntity(params,"utf-8");  
  9.             post.setEntity(entity);  
  10.             try {  
  11.                 HttpResponse httpResponse = httpClient.execute(post);  
  12.                 tag = "get string false";  
  13.                 if (httpResponse.getStatusLine().getStatusCode() == 200) {  
  14.                     HttpEntity entity2 = httpResponse.getEntity();  
  15.                     tag=EntityUtils.toString(entity2);  
  16.                     //tag = Decodtool.decodeUnicode(URLDecoder.decode(EntityUtils.toString(entity2, "uft-8"), "utf-8"));                      
  17.                 }  
  18.             } catch (ClientProtocolException e) {             
  19.                 e.printStackTrace();  
  20.             } catch (IOException e) {                 
  21.                 e.printStackTrace();  
  22.             }  
  23.         } catch (UnsupportedEncodingException e) {            
  24.             e.printStackTrace();  
  25.         }  
  26.         return tag;  
  27.   
  28.     }  

2.通过Gson解析:记得导入Gson包

[java]  view plain  copy
 print ?
  1. public static void main(String[] args) {  
  2.   
  3.         String data = getdata();  
  4.         System.out.println(parase(data).toString());  
  5.     }  
  6.   
  7.     private static String getdata() {  
  8.         String url = "http://192.168.2.171:9898/Service_Resource.ashx";   
  9.         ArrayList params = new ArrayList();  
  10.         params.add(new BasicNameValuePair("method""GetAll"));  
  11.         return NetworkUtil.getdata(url, params);  
  12.     }  
  13.   
  14.     private static ArrayList parase(String data) {  
  15.         Gson gson = new Gson();  
  16.         JSONObject jsonObject = JSONObject.fromObject(data);  
  17.         String datapart = jsonObject.getString("data");  
  18.         Type type = new TypeToken>() {}.getType();  
  19.         ArrayList resourcebeans = gson.fromJson(datapart, type);  
  20.         return resourcebeans;  
  21.     }  


你可能感兴趣的:(java)