Stackoverflow团队成员。
我正在努力解决我的问题。
实际上在我的应用程序中,我想使用Jquery和Json与Servlet。在我的应用程序中有一个JSP Servlet页面可以输入详细信息条目,如user_name
,user_address
等。
所有这些数据都将使用jquery ajax发送到数据库。现在我想要以json数组对象的形式检索使用json插入到数据库的所有记录。
我能够将记录插入数据库,但我不知道如何将它们从数据库恢复到json对象数组,以便我可以再次使用它们。在另一个jsp servlet页面中。
帮我解决问题。
最诚挚的问候
Yogendra
答案 0 :(得分:1)
首先,您需要对servlet进行Ajax调用,请参阅以下代码:
$.getJSON("yourServlet", function(json) {
alert("JSON Received Data: " + json);
//Logic to Parse the received JSON
});
</script>
其次在服务器端使用其特定格式构造JSON对象,如:
{
"firstName": "John",
"lastName": "Smith",
"address": {
"streetAddress": "21 2nd Street",
"city": "New York",
"state": "NY",
"postalCode": 10021
},
"phoneNumbers": [
"212 732-1234",
"646 123-4567"
]
}
现在构建数据库中插入记录的列表,请参阅以下示例代码,该代码显示如何在JSON中构建记录列表:
List mybeanList = new ArrayList();
mybeanList.add(myBean1);
mybeanList.add(myBean2);
JSONArray jsonArray = JSONArray.fromObject(mybeanList);
System.out.println("==== : "+jsonArray);
Map map = new HashMap();
map.put("beanlist", jsonArray);
JSONObject jsonObject = JSONObject.fromObject(map);
return jsonObject;
最后在jsp中解析收到的JSON响应(使用javascript或任何其他替代方法)......
如果您遇到任何有关JSON的问题,请使用this tutorial。
答案 1 :(得分:0)
您需要与数据库服务器端建立连接,将记录从数据库中提取出来(可能根据ajax请求中的数据进行过滤?查看data
.getJSON
属性然后你的服务器需要在JSON中格式化它。在PHP中,您将使用json_encode($data_array)
- 然后只需echo
将其返回给客户端。对于jQuery请求:
$.getJSON('http://site.com/ajax/get-latest-posts', {
success: function(jsonObject) {
// jsonObject[0].author, for example.
}
});