我在从Java servlet内的JavaScript检索以JSON形式发送的数据时遇到查询。以下是我在做什么…
这是JavaScript内向Servlet发出请求的代码的一部分
type : "POST",
url: 'getInitialData',
datatype: 'json',
data : ({items :[{ name: "John", time: "2pm" },{name: "Sam", time: "1pm" }]}),
success: function(data) {
try{
////Code to be handeled where response is recieved
}catch(e){
alert(e);
}
}
在发出此请求时,我尝试检索从Servlet中的JavaScript发送的参数,但这样做时,我首先对如何从请求中检索数据感到困惑
我在servlet中使用了以下内容:
注意: 我的Servlet中的内容类型设置为: apllication / json
response.setContentType("application/json");
request.getParameterMap();
上面显示了以下数据,但我无法弄清楚如何工作并获取实际数据
{items[1][name]=[Ljava.lang.String;@1930089, items[0][time]=[Ljava.lang.String;@860ba, items[1][time]=[Ljava.lang.String;@664ca, items[0][name]=[Ljava.lang.String;@1c334de}
而以下代码为我提供了预期为null的异常。
request.getParametervalues("items");
除其他外,我尝试了request.getParameter(); request.getParameterNames(); 但徒劳的
我的方向错误吗?请指导我!请让我知道如何释放这些价值。
感谢您阅读这篇长文章…
Sangeet
请求参数映射是Map<String, String[]>
映射键,其中映射键是参数名称,映射值是参数值。–HTTP允许在同一名称上使用多个值。
给定您的地图打印输出,以下方法应该起作用:
String item0Name = request.getParameter("items[0][name]");
String item0Time = request.getParameter("items[0][time]");
String item1Name = request.getParameter("items[1][name]");
String item1Time = request.getParameter("items[1][time]");
如果您需要更多动态信息,请使用以下命令:
for (int i = 0; i < Integer.MAX_VALUE; i++) {
String itemName = request.getParameter("items[" + i + "][name]");
String itemTime = request.getParameter("items[" + i + "][time]");
if (itemName == null) {
break;
}
// Collect name and time in some bean and add to list yourself.
}
请注意,设置 响应 内容类型与收集 请求 参数无关。
问题内容: 这非常有用,但是他们提到通过JSON传递数据可以使任何一个例子。我尝试了对象的序列化,但是却遇到java.io.EOFException异常(我在寻找解决方案,有人说这可能是JVM版本缺少匹配导致的),所以我决定使用JSON。 问题答案: 如果您要创建或读取json字符串,则建议使用Google的Gson。 要从Servlet发送json响应,请执行以下操作:
问题内容: 我有以下表格及其关系。我将JSON数据存储在client_services表中。它们是使用MySQL查询来检索JSON值的任何方式,如下所示: 还是可以进一步规范化client_services表? 表: 表: 表: 表: 问题答案: 由于很多人都亲自问过我这个问题,所以我想我会再作一次修改。这是一个具有SELECT,Migration和View Creation的完整SQL的要点,
问题内容: 我的手机APP以文本模式完美下载内容。下面是执行此操作的代码。我将其称为Communicator类和exectueHttpGet: 我要讲的是(URL的源代码): 该响应是一个字符串。在服务器上,它作为JSON对象输出(与PHP一起),现在在我的Android PHP中,我想将此字符串转换为JSON。这可能吗? 问题答案: 您收到的是从附加到a 并最终转换为的一系列字符-因此,结果是可
我是JSON的新手。我想使用JSON检索两个地方之间的距离。我想从位于“legs”数组中的“Distance”对象获取“text”(距离b/w两个地方),而“legs”数组又位于“routes”数组中。链接(http://maps.googleapis.com/maps/api/directions/json?origin=adoor&destination=thiruvananthapuram%
我有一个用Java编写的管理应用程序,可以管理我的用户 我创建了一个自定义json 这就是我的JSON看起来的样子 在我的列表中,我只显示电子邮件地址 现在我的问题,例如,如果我单击包含电子邮件的列表,我想在对话框中显示与此电子邮件相关的数据,即、和 怎样我可以检索其他值吗使用电子邮件? 我在网上找不到任何关于它的信息
问题内容: 我是java的新手,我为这个问题苦苦挣扎了2天,最后决定在这里提问。 我正在尝试读取jQuery发送的数据,因此可以在servlet中使用它 jQuery的 Servlet 我非常感谢您可以提供的任何帮助。 问题答案: 除非正确发送,否则将无法在服务器上对其进行解析: 您必须使用JSON字符串来发送JavaScript对象。 然后在服务器上: 您可以手动或使用任何库来解析字符串(我建议