通过DWR发送和接收JSON对象

Sending and receiving JSON object through DWR

本文关键字:JSON 对象 DWR 通过      更新时间:2023-09-26

我在项目中使用DWR进行AJAX调用。DWR通过读取java类将javascript对象转换为java对象。我想通过DWR发送和接收JSON结构。

,

JS对象:

{
  "name" : "TamilVendhan",
  "age" : "24",
  "hobbies" : [
    "gaming",
    "gaming",
    "gaming"
  ],
  "address" : {
    "doorNo" : "122",
    "city" : "Banglore",
    "state" : "Karnataka",
    "country" : "india"
  }
}

上面的js对象可以按如下方式转换为Java:

Map<String, Object> map = new HashMap<String, Object>();
map.put("name", "TamilVendhan");
map.put("age", "24");
List<String> list = new ArrayList<String>();
list.add("gaming");
list.add("gaming");
list.add("gaming");
map.put("hobbies", list);
Map<String, Object> addr = new HashMap<String, Object>();
addr.put("doorNo",122);
addr.put("city", "banglore");
addr.put("state", "Karnataka");
addr.put("country", "India");
map.put("address", addr);

这在DWR中是可能的吗?如果可能的话,给我一些建议!

谢谢!


更新:

在DWR中可以将JS对象转换为Map<String, Object>。但这只是第一级。如果您有任何嵌套的对象/数组,它将不会被转换并以conversion error结束。

最新版本的DWR有json支持,你需要在你的web.xml中通过传递DWR Servlet的初始参数来启用,更多的信息可以在,DWR也有一个很好的书名为'DWR Java AJAX应用程序'。