如何在servlet里面接收到Android端传过来的Json数据(利用HttpUtils框架传的)

黎沧洛 发布于 2016/05/11 15:55
阅读 1K+
收藏 1

最近在做一个Android——Web两边关联的点菜APP,在Android端利用httpUtils上传菜单的时候(已经组织为Json数据形式,检查内容正确),不知道在web段的相应servlet里面如何获取到该Json并且解析,请路过的各位帮一下忙,谢谢!

Android端代码:

public void sendHTTPRequest(String url, int progressStringID, JsonObject jsonObject) {
		// TODO Auto-generated method stub
		initDiaglog(progressStringID);
		RequestParams params = new RequestParams("UTF-8");
		try{
			params.setBodyEntity(new StringEntity(gson.toJson(jsonObject),"UTF-8"));
			params.setContentType("application/json");
		}catch(UnsupportedEncodingException e){
			e.printStackTrace();
		}
		http.send(HttpMethod.POST, url, new RequestCallBack<String>() {

			@Override
			public void onStart() {
				// TODO Auto-generated method stub
				progressDialog.show();
			}
			
			@Override
			public void onFailure(HttpException arg0, String arg1) {
				// TODO Auto-generated method stub
				progressDialog.dismiss();
				DialogUtil.textDialog(OrderAty.this, getResources().getString(R.string.CONNECTERROR));
			}

			@Override
			public void onSuccess(ResponseInfo<String> arg0) {
				// TODO Auto-generated method stub
				progressDialog.dismiss();
				System.out.println("Json数据发送成功!!!");
			}
		});
	}



对应的MenuServlet的doPost方法里面该怎么写啊?(现在已经提示发送成功了,但是我不知道怎么接收到)

@Override
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
	//这里应该怎么写,不知道如何获得这个Json形式的参数
	}



加载中
0
xpbob
xpbob
标准的servlet貌似不支持直接变json格式,但是你用框架的话他会自动处理的例如springmvc,或者你直接从request里获取输入流里面的字符,然后自己进行转换
0
_凤求凰_
_凤求凰_
android传递json的时候可以加个参数名,servlet请求request里可以根据参数名获取传递过来的json数据。然后处理就ok
0
阿信sxq
阿信sxq

这样获取json字符串:

BufferedReader reader = request.getReader();
String json= reader.readLine();

亲测有效的


阿信sxq
阿信sxq
回复 @黎沧洛 : 不是吧,已经测试过的,你多试试其他的可能方法看
黎沧洛
黎沧洛
额,试过了,但是读出来的还是null啊···
返回顶部
顶部