今天发现一个问题,就是当我使用POST的Ajax请求时,由于我的是使用网页表格,生成的数据有5000多条了,封装过的JSON估计也很长(10条数据的JSON解析过的长度大概是3000行左右),然后我使用了data{json:JSON.stringify(spread.toJSON())},但是在后台调试的时候是null,所以导致我后面全报的是空指针,但是我查10条的数据用这种写法是可以的,当我在后台使用String json = getPara("json");是为空,然后我看到一种方法是:采用
public String readRequstJson(HttpServletRequest request) {
StringBuffer json = new StringBuffer();
String line = null;
try {
BufferedReader reader = request.getReader();
while ((line = reader.readLine()) != null) {
json.append(line);
}
} catch (Exception e) {
e.printStackTrace();
}
return json.toString();
}
发现好像还是不行,org.eclipse.jdi.TimeoutException: Timeout occurred while waiting for packet 4610. occurred while retrieving value.出现这个问题,希望大神帮忙!!
项目:JFinal
String jsonString = HttpKit.readData(getRequest());
获取完数据,你可以使用自己喜欢的工具转成各种 java 对象,例如可转成 Map:
Map map = FastJson.getJson().parase(jsonString, Map.class);