67,512
社区成员
发帖
与我相关
我的任务
分享
public static void main(String[] args) throws Exception {
HttpClient client = new DefaultHttpClient();
String path = "http://localhost:8080/TestAnnotationConfig/b";
HttpPost post = new HttpPost(path);
Vendor v = new Vendor();
v.setName("传输数据");
v.setDescription("数据传输");
v.setCreateDate(new Date());
v.setId(20);
String content = JSONBinder.binder(Vendor.class).toJSON(v);
StringEntity entity = new StringEntity(content);
entity.setContentEncoding("UTF-8");
entity.setContentType("application/json");
post.setEntity(entity);
HttpResponse response = client.execute(post);
System.out.println("响应状态码:" + response.getStatusLine().getStatusCode());
InputStream is = response.getEntity().getContent();
String text = StreamUtil.readInputStream(is);
System.out.println("服务器端响应的数据:" + text);
}
@RequestMapping(value = "/b", method = RequestMethod.POST, produces = MediaType.APPLICATION_JSON_VALUE)
@ResponseBody
public String b(@RequestBody Vendor v) {
System.out.println("客户端发送的数据:" + v);
return "success";
}
// 设置HTTP POST请求参数必须用NameValuePair对象
Gson g = new Gson();
List<BasicNameValuePair> params = new ArrayList<BasicNameValuePair>();
//Map键是param, 值是实体
params.add(new BasicNameValuePair("param", g.toJson(entity)));
UrlEncodedFormEntity entity = new UrlEncodedFormEntity(params, HTTP.UTF_8);
// 设置HTTP POST请求参数
httpPost.setEntity(entity);