java - 创建 JSON 数据

标签 java ajax json jsp

我正在使用this answer作为基础,但我无法让它发挥作用。我的主要问题是 .add() 方法在 JSONArray 类中不可用。

estinationList 只是一个 ArrayList。

    JSONObject json      = new JSONObject();
    JSONArray  addresses = new JSONArray();
    JSONObject address;
    public void doPost(HttpServletRequest req, HttpServletResponse resp) throws IOException {
        for (Establishment est : establishmentList) {
            address = new JSONObject();
            try {
                address.put("name", est.getBusinessName());
                address.put("address", est.getAddress());
                address.put("rating", est.getRating());
                addresses.add(address); //<-- method not available, compiler error
            } catch (JSONException e) {
                e.printStackTrace();
            }
        }
        json.put("Addresses", addresses);
        resp.setContentType("application/json");
        PrintWriter out = resp.getWriter();
        out.println(json.toString());
    }   

我导入的 JSON 是:

      import com.google.appengine.labs.repackaged.org.json.JSONArray;
      import com.google.appengine.labs.repackaged.org.json.JSONException;
      import com.google.appengine.labs.repackaged.org.json.JSONObject;

最佳答案

应该是:

            addresses.put(address);

关于java - 创建 JSON 数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20431547/

相关文章:

ios - 使用 RestKit 为我的对象获取 JSON 字符串

javascript - jquery如何获取json数据

java - 优化 Java 中字符串集合的内存使用

Debian Linux 上的 Java 闪屏闪烁

php - 在 php 中的 Javascript 函数中获取单选按钮字段值

javascript - 动态更改tip提示文本

java - 在 Alert Dialog Builder 中编辑文本

java - Time Profiler、Instruments、OS X 中缺少 JAVA 过程名称

jquery - ajax 实时更新 div 元素中的文本

java - 为 jsonObj.getString 返回 null ("key");