将 tMap 流数据存储到 HashMap 中
Store tMap flow data into HashMap
我有一个场景,我想在 tMap 组件处理后将数据存储到 HashMap。
我的流程如下:
tFileInputExcel------>tMap------>tJavaRow/tJavaFlex
在 tJavaRow 中,我想将所有数据存储到 HashMap 中。
对此有任何帮助。
这并不难做到,但对于代码的 "reader" 来说,它不像组件的用法那么明显。
为了可读性,我建议在 tJavaRow 上使用 tJavaFlex 组件。假设 Flow "toHashMap" 退出带有字段 "myKey" 和 "myValue" 的 tMap,tJavaFlex 中的代码将如下所示:
起始码:
HashMap myAwesomeMap = new HashMap<>();
主要代码:
myAwesomeMap.put(toHashMap.myKey, toHashMap.myValue);
结束码:
/*
无论您想对聚合数据做什么。在任何情况下,您都可能希望将它保存到 globalMap 中。
*/
globalMap.put("myAwesomeMap", myAwesomeMap);
除了 Philipps 的回答,我想补充一点,您可以使用 tHashMap
组件。通常,当安装 Talend 并且您 need to activate them first.
时,它们会被停用
然后使用它们就非常容易了,只需像往常一样添加组件即可。您将节省创建代码的时间。
我有一个场景,我想在 tMap 组件处理后将数据存储到 HashMap。 我的流程如下:
tFileInputExcel------>tMap------>tJavaRow/tJavaFlex
在 tJavaRow 中,我想将所有数据存储到 HashMap 中。
对此有任何帮助。
这并不难做到,但对于代码的 "reader" 来说,它不像组件的用法那么明显。
为了可读性,我建议在 tJavaRow 上使用 tJavaFlex 组件。假设 Flow "toHashMap" 退出带有字段 "myKey" 和 "myValue" 的 tMap,tJavaFlex 中的代码将如下所示:
起始码:
HashMap myAwesomeMap = new HashMap<>();
主要代码:
myAwesomeMap.put(toHashMap.myKey, toHashMap.myValue);
结束码:
/*
无论您想对聚合数据做什么。在任何情况下,您都可能希望将它保存到 globalMap 中。
*/
globalMap.put("myAwesomeMap", myAwesomeMap);
除了 Philipps 的回答,我想补充一点,您可以使用 tHashMap
组件。通常,当安装 Talend 并且您 need to activate them first.
然后使用它们就非常容易了,只需像往常一样添加组件即可。您将节省创建代码的时间。