Javascript代替json输入步骤

Javascript代替json输入步骤,json,mongodb,pentaho,kettle,e4x,Json,Mongodb,Pentaho,Kettle,E4x,我正在通过Kettle转换将数据从mongodb集合加载到mysql表。 首先,我使用MongoBinput提取它们,然后使用json输入步骤。 但由于json输入步骤的性能非常低,我想用一个 JavaScript脚本。 我是Javascript的初学者,尽管我尝试了一些东西,但kettle Javascript脚本无法识别任何关键字 有人能给我一些示例代码来使用javascript将Json数据转换为不同的列吗?您可以使用Json输入步骤来获取此Json的值,并将其放在公共行中来解决您的问题,

我正在通过Kettle转换将数据从mongodb集合加载到mysql表。 首先,我使用MongoBinput提取它们,然后使用json输入步骤。 但由于json输入步骤的性能非常低,我想用一个 JavaScript脚本。 我是Javascript的初学者,尽管我尝试了一些东西,但kettle Javascript脚本无法识别任何关键字


有人能给我一些示例代码来使用javascript将Json数据转换为不同的列吗?

您可以使用Json输入步骤来获取此Json的值,并将其放在公共行中

来解决您的问题,您需要看到三个方面:

  • 阅读MongoDB
  • 从JSON读取
  • 从(可能)字符串读取
  • 从MongoDB读取除非您更改了接口,否则MongoDB返回的不是JSON,而是BSON文件(~binary JSON)。您需要查看有关读写BSON的MongoDB文档:可能类似于
    BSON.to()
    BSON.from()
    ,但我不太清楚

    读取JSON一旦获得JSON格式的BSON,就可以使用
    JSON.stringify()
    读取它,它返回一个
    字符串

    读取(可能是)字符串如果要使用JSON的功能(否则为什么要使用JSON?),还需要使用返回JSON对象的
    JSON.parse()

    我的经验是,使用
    String
    将JSON对象从一个步骤发送到另一个步骤并不是一个坏主意,也就是说,在JavaScript步骤结束时,将JSON对象写入
    String
    ,然后在下一个JavaScript步骤开始时(可以在流程的下游)将其解析回JSON以使用它

    我希望这能回答你的问题


    PS:编写JavaScript步骤需要学习JavaScript。你不一定要成为大师,但基本功是必需的。这是没有办法的。

    “我是Java初学者”-Java和JavaScript是不相关的语言。你能展示一下你到目前为止的一些代码吗?好的,我不知道它们中的任何一个。我想这对我没有帮助,因为我不想以json格式输出,而且json输入和输出步骤都非常慢。所以我需要写一个javascript来加速这个过程。使用json输入步骤不是最后一步。我的意思是,您使用这个步骤,现在您有了可以通过其他步骤正常处理的行。我不理解“输出步骤非常慢”的概念。我每天都使用这些步骤,但没有注意到比javascript步骤更糟糕的性能。对不起,我犯了一个错误,我是说json输入步骤谢谢大家的输入。。我会尝试学习javascript并尝试它。