分享

kettle工具使用JavaScript+JAVA+httpClient

 小雪初晴i 2023-03-10 发布于河北

目的:使用kettle工具实现从动态传参调用HTTP接口获取数据,经过java对数据进行处理,同步到mysql数据库中

步骤示意图如下:

步骤一:生成记录,用于放置url域名

步骤二:JavaScript脚本,用于处理动态url或者参数

动态日期js代码 

  1. //Script here
  2. var date = new Date();
  3. var year = date.getFullYear();
  4. var month =(date.getMonth() + 1).toString();
  5. var day = (date.getDate()).toString();
  6. if (month.length == 1) {
  7. month = "0" + month;
  8. }
  9. if (day.length == 1) {
  10. day = "0" + day;
  11. }
  12. var dateTime = year + "-" + month + "-" + day +"T00:00:01";

 步骤三:REST client 选择处理好的值uri 填好返回值命名data,http状态为code

 如果请求中需要用户名密码访问如下配置

步骤四:JSON输出 获取并解析json返回值

 从返回值解析字段值

解析表达式:

$..d.results[*].empId

 对应json示例

 

步骤五:替换null值

步骤六:java脚本,对数据进行处理

 

  1. public boolean processRow(StepMetaInterface smi, StepDataInterface sdi) throws KettleException {
  2. Object[] r = getRow();
  3. if (r == null) {
  4. setOutputDone();
  5. return false;
  6. }

  7. String id = get(Fields.In,"empId").getString(r);
  8. get(Fields.Out,"empId").setValue(r,id+"test");
  9. putRow(data.outputRowMeta, r);
  10. return true;
  11. }

 

步骤七:表输出

 

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约