You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Talend DI 7.2:如何配置tExtractJsonFields提取tJavaRow返回的对象列表数据

Talend DI 7.2 用tExtractJsonFields提取对象列表数据的配置步骤

1. 先在tJavaRow中将对象列表转为JSON数组字符串

  • 假设你已生成List<YourObject>类型的对象列表,先引入JSON序列化工具(Talend默认集成Gson,可直接使用)。
  • 在tJavaRow的代码编辑区,将对象序列化为JSON数组字符串,输出到新字段(比如命名为json_array_str):
    import com.google.gson.Gson;
    List<YourObject> objList = // 你的对象列表生成逻辑
    String json_array_str = new Gson().toJson(objList);
    output_row.json_array_str = json_array_str;
    
  • 记得在tJavaRow的输出Schema里添加json_array_str字段,类型设为String。

2. 连接组件并配置tExtractJsonFields基础参数

  • 用主行流(Main)将tJavaRow和tExtractJsonFields连接。
  • 双击打开tExtractJsonFields配置界面:
    • JSON字段:选择tJavaRow输出的json_array_str字段,作为解析的JSON源。
    • JSON路径表达式:填写$[*],该表达式会遍历JSON数组的每一个元素,自动将数组拆分为多行(每行对应一个对象)。
    • 模式:选择JSON Path模式。

3. 配置字段映射规则

  • 切换到Edit Schema(编辑模式),添加需要提取的字段,字段名、数据类型要和对象属性一一对应(比如对象有id(整数)、name(字符串),就添加对应字段)。
  • 回到Mapping(映射)标签页,给每个目标字段配置JSON路径:
    • 例如id对应$.id,name对应$.name(这里的$代表当前遍历到的数组元素对象);如果有嵌套属性,比如user.info.age,路径写$.user.info.age即可。

4. 测试验证

  • 运行作业,检查tExtractJsonFields的输出结果,确认每个对象的属性都被正确提取到对应字段中。

内容的提问来源于stack exchange,提问作者Mohamed Jmal

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.03 15:43:12