显示组件数据

时间:2012-11-26 05:28:54

标签: talend

我有这样的工作流程,

tAccessInput_1 - > tMap_1 - > tSortRow_1 - > tJava - > tBufferOutput_1 是否可以在每次迭代时在tJava组件中的 tBufferOutput_1 中显示数据。如果可能,我该怎么办?

2 个答案:

答案 0 :(得分:1)

如果您只想输入输入到tBuffer组件中的任何内容,请尝试连接到 tLogRow 组件,该组件将吐出控制台中的所有内容。

如果你因为某些其他特殊原因想要tJava,这里有一个稍微复杂的方法:

tBufferOutput_1 - > tFlowToIterate - > tIterateToFlow - > tJava

然后,在tJava中,您可以执行以下操作: System.out.println((String)globalMap.get(“row.column”));

其中:

row 是tIterateToFlow到tJava之间的主数据行的名称(例如row6)

是您要输出的任何架构列

数据被转换为String,但在您的情况下,它可能是整数或其他内容。

您需要将流更改为迭代的原因是因为tJava需要迭代才能打印所有行(正如您在问题中正确指出的那样)。

答案 1 :(得分:0)

正如llaen所解释的,最好的解决方案是使用 tLogRow 打印Talend / Java控制台中的每一行。 如果要自定义打印方式,最好使用tJavaRow(而不是tJava)来避免使用tFlowToIterate和tIterateToFlow

tAccessInput_1 - > tMap_1 - > tSortRow_1 - > tJavaRow - > tBufferOutput_1

然后,在tJavaRow中,使用以下java代码:System.out.println(input_row.column)

其中:
input_row 将自动解释并由Talend Code生成器替换 是您要输出的任何架构列