Java中的Java Nashorn构建JSON数组对象找不到方法

时间:2019-03-20 09:45:46

标签: java json nashorn

我尝试创建java json数组, 无法找到使用Nashorn创建它们的方法 我可以创建简单的对象...

private void createJsonObject() {
        try {

            final Map<String, Object> newMap = new HashMap<>();
            newMap.put("foo",1);
            newMap.put("bar", true);

            ScriptObjectMirror json = (ScriptObjectMirror) this.engine.eval("JSON");
            json.putAll(newMap);

            this.engine.put("jsonObject", json);
            String result = (String) this.engine.eval("JSON.stringify(jsonObject)");
            System.out.println(result);
        } catch (ScriptException e) {
            e.printStackTrace();
        }

    }

结果:{“ bar”:true,“ foo”:1}

我在这里尝试创建数组,但即时通讯收到的是空json

 private void createJsonObject() {
        try {


            List<String> returnList = new ArrayList<>();
            returnList.add("x");
            returnList.add("y");
            ScriptObjectMirror json = (ScriptObjectMirror) this.engine.eval("JSON");         
            json.put("test",returnList);
            this.engine.put("jsonObject", json);
            String result = (String) this.engine.eval("JSON.stringify(jsonObject)");
            System.out.println(result);
        } catch (ScriptException e) {
            e.printStackTrace();
        }

    }

结果:{}

最终目标是使用Java本机工具在不使用依赖项的情况下在内存中构建对象数组

0 个答案:

没有答案