Kettle8.2腳本元件之Java腳本
-
- 一、相關說明
- 二、設計轉換
- 三、轉換配置
- 四、運作轉換
- 五、結果檢視
一、相關說明
-
Java腳本元件說明:
java腳本就是使用java語言通過代碼程式設計來完成對資料流的操作。内置了很多函數可以直接使用。java腳本主程式入口是processRow()函數,其等價于main方法,processRow()函數是用來處理資料流的場所!
-
需求說明:
從Excel中讀取資料,生成newcode字段,如果code列為NULL就使用name列來替換,否則就在code列的後面加上123,結果儲存在Excel。
- 測試資料源後續上傳至部落格中
二、設計轉換
- 輸入:Excel輸入
- 腳本:Java代碼
- 輸出:Excel輸出
三、轉換配置
- Step1:Excel輸入元件配置
- 輕按兩下元件,寫上步驟名稱等
- 相關配置如下所示:
- Step2:Java腳本元件配置
- 輕按兩下打開,設定步驟名稱
- 配置資訊,如下, 所需添加java代碼片段如下:
//擷取code String code = get(Fields.In,"code").getString(r); //判斷,如果code為空,使用name的值給newcode,否則code後面添加123 if(code == null || "".equals(code)){ code = get(Fields.In,"name").getString(r); }else{ code += "123"; } //設定值給newcode get(Fields.Out,"newcode").setValue(r,code); // Send the row on to the next step. putRow(data.outputRowMeta, r);
- Step3:Excel輸出元件配置
- 輕按兩下打開,設定步驟名稱
- 配置資訊,如下,
-
Step4:儲存轉換
上述配置好後,點選确定即可!
四、運作轉換
- 點選運作按鈕,成功運作如下:
五、結果檢視
- Preview data 中檢視結果