0

我想使用 javascript 库来制作像 D3 和许多其他很酷的可视化。但是我生成数据的主要应用程序是用 java 编写的。有没有办法在 java 组件中编写 javascript,然后从 java 显示可视化?当然,我需要将数据从 java 传递到 javascript 以进行可视化。

4

2 回答 2

0

从 Java 1.6 开始,您可以使用 ScriptEngine 类在 Java 中包含 JavaScript。您可以从 java 调用函数、传递参数和读取结果。

http://docs.oracle.com/javase/6/docs/technotes/guides/scripting/programmer_guide/

加载 javascript 并调用函数的简短示例:

        ScriptEngineManager manager = new ScriptEngineManager();
        ScriptEngine engine = manager.getEngineByName("js");

        InputStreamReader reader = new InputStreamReader(this.getClass().getResourceAsStream("somejavascriptinthesamepackage.js"));

        engine.eval(reader);
        reader.close();

        String result = (String) engine.eval("someFunction(" + <insert argement> + "));");
于 2013-09-18T07:49:03.257 回答
0

您应该提供更多关于用户如何查看数据的数据,它是一个 Web 应用程序,用户是否从 Web 浏览器查看数据等等......

但是,您可以在 java 中生成数据,然后将 JSON 字符串传递给 js 代码。并且 js 代码将负责显示。

一个好的 JSON 库是:Jackson。

于 2013-09-18T07:53:20.433 回答