java如何在servlet中读取ajax发送的json
我是java新手,我为这个问题挣扎了两天,最后决定在这里提问
我试图读取jQuery发送的数据,以便在servlet中使用它
jQuery
var test = [
{pv: 1000, bv: 2000, mp: 3000, cp: 5000},
{pv: 2500, bv: 3500, mp: 2000, cp: 4444}
];
$.ajax({
type: 'post',
url: 'masterpaket',
dataType: 'JSON',
data: 'loadProds=1&'+test, //NB: request.getParameter("loadProds") only return 1, i need to read value of var test
success: function(data) {
},
error: function(data) {
alert('fail');
}
});
Servlet
protected void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
if (request.getParameter("loadProds") != null) {
//how do i can get the value of pv, bv, mp ,cp
}
}
我真的很感激你能提供的任何帮助
# 1 楼答案
使用导入组织。json。JSONObject而不是导入组织。json。易于理解的JSONObject帮我搞定了
见How to create Json object from String containing characters like ':' ,'[' and ']' in Java
# 2 楼答案
除非正确发送,否则无法在服务器上解析:
必须使用
JSON.stringify
将JavaScript对象作为JSON字符串发送然后在服务器上:
您可以手动解析
json
字符串,或者使用任何库(我建议gson)