【问题标题】:Jquery with Servlet to fetch database JSON array object使用 Servlet 获取数据库 JSON 数组对象的 Jquery
【发布时间】:2011-04-28 10:48:08
【问题描述】:

Stackoverflow 团队成员。

我正在努力解决我的问题。 实际上,在我的应用程序中,我想将 Jquery 和 Json 与 Servlet 一起使用。在我的应用程序中,有一个 JSP Servlet 页面可以输入详细信息条目,例如 user_nameuser_address 等。

所有这些数据都将使用 jquery ajax 发送到数据库。现在我想检索所有使用 json 以 json 数组对象形式插入数据库的记录。

我能够将记录插入数据库,但我不知道如何将它们从数据库中取回到 json 对象数组,以便我可以再次使用它们。在另一个 jsp servlet 页面中。

帮我解决我的问题。

最好的问候
尤根德拉

【问题讨论】:

标签: java jquery json servlets


【解决方案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

【讨论】:

    【解决方案2】:

    您需要与数据库服务器端建立连接,将记录从数据库中拉出(可能根据来自 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.
             }
       });
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-09-13
      • 2014-02-18
      • 1970-01-01
      • 1970-01-01
      • 2013-09-24
      • 1970-01-01
      相关资源
      最近更新 更多