我正在使用Talend进行集成,我想知道是否有可能将数据从tJavaRow
传递到tJava
组件。
例如:tJavaRow
组件:
String check = input_row.foo;
if( check.contains("Yes")){
String ret = "OK";
return ret;
}
tJava
组件:System.out.println(ret);
是否有一种打印
ret
的方法,它是对下一个组件内部的上一个组件进行计算的结果? 最佳答案
解决方法是使用globalMap
或tSetGlobalMap
globalMap.put("ret", ret);
并用恢复
globalMap.get("ret");
/!\重要/!\
但是请注意,如果在主流中使用
tJava
tRowGenerator > row1 > tJava > row2> tLogRow
tRowGenerator
生成1到10的10行tJava
像System.out.println("foo");
tLogRow
打印数值输出将是
foo
1
2
3
4
5
6
7
8
9
10
tJava
中的代码仅在生成第一行之前执行一次。检查生成的代码,您可以看到System.out.println("foo");
....
for(int i = 0; i < 10; i++){
logrow.print(i);
}
关于java - 在talend中将数据从tJavaRow传递到tJava,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/47815404/