kettle工具使用JavaScript+JAVA+httpClient

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

步骤示意图如下:

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

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

动态日期js代码 

//Script here
var date = new Date();
var year = date.getFullYear(); 
var month =(date.getMonth() + 1).toString(); 
var day = (date.getDate()).toString();  
  if (month.length == 1) { 
      month = "0" + month; 
  } 
if (day.length == 1) { 
      day = "0" + day; 
}
var dateTime = year + "-" + month + "-" + day +"T00:00:01";

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

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

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

 从返回值解析字段值

解析表达式:

$..d.results[*].empId

 对应json示例

 

步骤五:替换null值

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

 

public boolean processRow(StepMetaInterface smi, StepDataInterface sdi) throws KettleException {
	Object[] r = getRow();
	if (r == null) {
		setOutputDone();
		return false;
	}

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

 

步骤七:表输出

 

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值