servlet怎么获取ajax传过来的json数据
$(function() {
$(":input[name=username]").change(function() {
var val = $(this).val();
val = $.trim(val);
if (val != "") {
var url = "${pageContext.request.contextPath}/json";
var person = new Object();
person.name = "Lanny";
person.age = "25";
person.location = "China";
var persons = JSON.stringify(person);
alert(persons);
$.post(url, persons, function(data) {
$("#message").html(data);
});
}
});
})
用户名:
后端
String name =request.getParameter("persons").toString();怎么获取的空指针异常了
------解决思路----------------------
request.getAttribute(): 看看
------解决思路----------------------
if (val != "") {
var url = "${pageContext.request.contextPath}/json";
var map = {
name :"Lanny",
age : "25",
rand : Math.random()
}
$.post(url, map , function(data) {
$("#message").html(data);
});
}
后端
String name =request.getParameter("name");
改成 这样 试试
------解决思路----------------------
if (val != "") {
var url = "${pageContext.request.contextPath}/json";
$.post(url, {"name":"Lanny","age":25,"location:"China"}, function(data) {
$("#message").html(data);
});
}
String name =request.getParameter("name");
String age=request.getParameter("age");
String location=request.getParameter("location");
------解决思路----------------------
String name =request.getParameter("name");
String age=request.getParameter("age");
String location=request.getParameter("location");
楼上正解,跟获取表单一样
------解决思路----------------------
简单的发送:
$.ajax({
type:"post",
url:"/UserServlet",
dataType:'json',
data:{
userName : $('#form1 input[name=userName]').val(),
password : $('#form1 input[name=password]').val(),
email : $('#form1 input[name=email]').val(),
mobile : $('#form1 input[name=mobile]').val(),
birthday : $('#form1 input[name=birthday]').val()
},
success:function(msg){
$('#msg').html("congratulation!");
}, error:function (msg){
$('#msg').html("The server occur an exception!");
}
});
-----------------------------------------------------------------------------------------
如何获取:
String username=request.getParameter("userName");
String password=request.getParameter("password");
String email=request.getParameter("email");
String mobile=request.getParameter("mobile");
String birthday=request.getParameter("birthday");
-----------------
答案不符合,请指出。
这篇博客探讨了在JavaScript中使用Ajax发送JSON数据到Servlet时遇到的空指针异常问题。作者首先展示了尝试通过POST方法发送JSON对象的代码,然后列举了几个可能的解决思路,包括正确地使用`request.getParameter()`来获取参数,以及确保发送的数据格式与服务器端接收的参数名称匹配。最后,给出了一个简单的Ajax发送数据和Servlet接收数据的示例,强调了参数名的一致性对于正确通信的重要性。
622

被折叠的 条评论
为什么被折叠?



