如何解析收到的json数据

时间:2015-08-05 10:34:21

标签: java jsp struts2 struts2-json-plugin

我将json数组数据从JSP发送到Action类,我已经包含了struts2-json-plugin。 我想解析它作为ArrayList元素接收它。  我的代码是

在JSP中:

$.ajax({
        url: "UpdateNotification",
        dataType: "json",
        data: {ids: JSON.stringify(ids)},
        success: function(data) {
            alert("success " + data.st);
        }
    })

在行动中:

public class Test extends ActionSupport {
    ArrayList<String> ids = new ArrayList<String>();

        public ArrayList<String> getIds() {
            return ids;
        }

        public void setIds(ArrayList<String> ids) {
            this.ids = ids;
        }

        public String updateNotification() {
                 System.out.println("ID ARE " + getIds());
                    for (String a : getIds()) {
                        System.out.println("data " + a);
                    }
             }
      }

在运行时,它显示数据

ID ARE [["25","27","28"]]
  data ["25","27","28"]

如何将一个数据作为一个数组元素运行。

编辑我正在尝试将数据作为

ids(0)=25;
ids(1)=27;
ids(2)=28;

1 个答案:

答案 0 :(得分:1)

Json stringify方法返回json格式的值数组,如["25","27","28"]。但要转换为列表,您需要删除[]个字符才能提交CSV值。因为只能将CSV值转换为列表。尝试

data: {ids: JSON.stringify(ids).replace(/[\[\]]/g,'')},