私はこのような仕事の流れを持っています、
tAccessInput_1-> tMap_1-> tSortRow_1->tJava->tBufferOutput_1。これは、反復ごとにtJavaコンポーネントのtBufferOutput_1 のデータを表示することは可能ですか。可能であればどうすればいいですか?
私はこのような仕事の流れを持っています、
tAccessInput_1-> tMap_1-> tSortRow_1->tJava->tBufferOutput_1。これは、反復ごとにtJavaコンポーネントのtBufferOutput_1 のデータを表示することは可能ですか。可能であればどうすればいいですか?
tBuffer コンポーネントに入力されたものを出力するだけの場合は、コンソールにすべてを吐き出すtLogRowコンポーネントに接続してみてください。
他の特定の理由で tJava が必要な場合は、少し複雑な方法を次に示します。
tBufferOutput_1 -> tFlowToIterate -> tIterateToFlow -> tJava
次に、tJava で次の操作を実行できます。 System.out.println((String) globalMap.get("row.column"));
どこ:
rowは、tIterateToFlow から tJava までのメイン データ行の名前です (例: row6)。
columnは、出力したいスキーマ列です
データは文字列にキャストされますが、あなたの場合は整数またはその他のものである可能性があります。
フローを反復に変更する必要がある理由は、tJava がすべての行を印刷するために反復する必要があるためです (質問で正しく指摘したように)。
llaenが説明したように、tLogRowを使用して各行を Talend/Java コンソールに出力するのが最善の解決策です。印刷方法をカスタマイズする場合は、(tJava ではなく) tJavaRow を使用して、tFlowToIterate と tIterateToFlow の使用を避けることをお勧めします。
tAccessInput_1 --> tMap_1 --> tSortRow_1 --> tJavaRow --> tBufferOutput_1
次に、tJavaRow で次の Java コードを使用します: System.out.println(input_row.column)
ここで:
input_rowは自動的に解釈され、Talend Code generator
列に置き換えられます。出力するスキーマ列は何でも構いません。