String httpUrl = "http://192.168.1.110:8080/httpget.jsp";
// 创建HttpPost连接对象
HttpPost httpRequest = new HttpPost(httpUrl);// 使用NameValuePair来保存要传递的Post参数
List<NameValuePair> params = new ArrayList<>();
// 添加要传递的参数
params.add(new BasicNameValuePair("par", "HttpClient_android_Post"));try {
// 设置字符集
HttpEntity httpentity = new UrlEncodedFormEntity(params, "gb2312");
// 请求httpRequest
httpRequest.setEntity(httpentity);// 取得默认的HttpClient
HttpClient httpclient = new DefaultHttpClient();// 取得HttpResponse
HttpResponse httpResponse = httpclient.execute(httpRequest);if (httpResponse.getStatusLine().getStatusCode() == HttpStatus.SC_OK) {
String strResult = EntityUtils.toString(httpResponse.getEntity());
// 在这里处理获取到的响应数据
}
} catch (IOException e) {
e.printStackTrace();
// 在这里处理异常情况
}
解释:
List<NameValuePair> params = new ArrayList<>();
List<NameValuePair> 声明params变量,这变量是List接口实例。List是Java中的一个集合接口,用于存储元素的有序集合。
<NameValuePair> 是泛型,指定了这个列表只能存储NameValuePair类型的对象。NameValuePair是一个简接口,表示一个名称和值的对应关系,通常用于HTTP请求的参数。
new ArrayList<>() 创建了一个ArrayList的实例。ArrayList是List接口的一个具体实现,提供了动态数组的功能。<>操作符告诉编译器,这个ArrayList的类型与左边的变量声明保持一致(即NameValuePair类型)。