如何通过ajax将对象类型的元素发送到servlet?下面 在我传递的价值作为Ajax如下:如何通过Ajax发送对象到Servlet
data: { mapList : mapLists }
要获得在Servlet正在做的价值低于如下:
Object o = request.getAttribute("mapList");
System.out.println(o);
但是,返回的值总是空。我该怎么做才能解决这个问题?
如何通过ajax将对象类型的元素发送到servlet?下面 在我传递的价值作为Ajax如下:如何通过Ajax发送对象到Servlet
data: { mapList : mapLists }
要获得在Servlet正在做的价值低于如下:
Object o = request.getAttribute("mapList");
System.out.println(o);
但是,返回的值总是空。我该怎么做才能解决这个问题?
通过改变你的Ajax DATAS:
data: { 'mapList' : mapLists }
在HTTP GET或POST请求,你只能发送键/值对的列表作为参数传递给服务器,所以你将不得不手动序列化你的对象发送它的属性就是这种格式。
你应该更好地代替HttpServletRequest.getAttribute(String)
使用HttpServletRequest.getParameter(String)
。此外,作为HTTP GET/POST参数获得的内容将始终作为String
在servlet中接收。
我假设你正在使用jQuery发送Ajax请求。我还认为你的mapLists变量是一个json对象。据我所知,jQuery不会自动将json对象转换为键/值对HTTP参数列表,因此您必须自行完成,然后将其解析回servlet。你可以使用JSON.stringify()来转换你的json对象,或者你可以手动序列化它。
你好,你们都做了你所说的修改,但结果仍然是空的。下面的链接打印出我想发送给我的Servlet http://bit.ly/V9oHsg的对象。所以,伙计们,还有其他的提示吗?谢谢。 – 2013-02-13 17:26:00
Hello Roberto Linares感谢您的反馈。 [此链接](http://pastebin.com/Nug8CpVm)包含生成我的对象(数组)的函数。 [此链接](http://pastebin.com/j99dXmLa)有代码,我如何通过ajax发送结果并将其获取到servlet中。有了这些结果,我认为是拿起价值,并把它们放在地图
你好,你做了两个修改,但结果仍然是空。下面的链接打印出我想发送给我的Servlet http://bit.ly/V9oHsg的对象。所以,伙计们,还有其他的提示吗?谢谢。 – 2013-02-13 17:20:18