最新历史版本 :批量修改定時任務中的資料連結名 返回文檔
編輯時間: 內容長度:图片数:目录数: 修改原因:

目錄:

1. 概述编辑

1.1 應用場景

FDL 中原先採用的資料連結名為demo1,已在大量定時任務中使用。為了規範資料連結命名,需將此資料連結名更改為fdl_demo,目前需要逐個開啟定時任務並手動重新選擇新命名的資料連結,操作程式比較麻煩。

鑑於定時任務數量較多,手動選擇過於繁瑣,本文提供一種批量取代的解決方案。

1.2 實現思路

定時任務中的資料連結名儲存在 dp 檔案內,來源是fromConnectionName,去向是toConnectionName。如下圖所示:

1700624642588824.png

可透過 java 程式碼實現字串取代,直接批量取代 dp 檔案內對應的資料連結名即可。

1.3 注意事項

1)本文方案需要在「資源遷移」處匯出定時任務,匯出的定時任務不包含 批量調度 ,使用本文方案會導致批量調度配置丟失

2)本文方案使用了 javac 命令,所以電腦中需要安裝 JDK 。

2. 範例编辑

本文場景模擬如下:

  • 「定時開發任務」內原使用的資料連結名為mysql,需要取代為fdl_mysql

  • 「資料聯動Demo」內原使用的資料連結名為demo1,需要取代為fdl_demo

2.1 匯出需要修改資料連結名稱的任務

1)管理者進入 FDL 工程,點選管理系統>智慧維運>資源遷移>定時任務,將需要修改資料連結名稱的任務匯出。如下圖所示:

2)將下載後的壓縮包解壓到某個資料夾下,本文範例解壓到D:\lianjie中。如下圖所示:

1700634565320136.png

2.2 批量取代資料連結名

1)根據實際情況修改程式碼:

  • directoryPath:本文 2.1 節壓縮包存放位置。需注意,需要使用兩個反斜槓,D:\\lianjie

  • searchStrings:需要取代的字串,也就是原資料連結名。本文範例是:mysql、demo1

  • replacementStrings:取代後的字串,也就是新資料連結名。本文範例是:fdl_mysql、fdl_demo

程式碼範例:Java代码示例.zip

1700634781714816.png

2)將修改後的 Java 檔案放在某個資料夾下;cmd 中進入該資料夾,執行命令:javac FileStringReplacement.java,執行成功會生成一個 FileStringReplacement.class 檔案。如下圖所示:

1700634884609967.png

3)再執行命令:java -cp . FileStringReplacement,運作 class 檔案,運作成功此時再查看 resource 資料夾下的 dp 檔案,已經成功修改。如下圖所示:

1700635265158157.png

2.3 資源匯入改寫原任務

1)將修改後的資料夾壓縮成 zip 檔案(檔案名稱可自訂),再用 FDL 的資源遷移匯入,選中要匯入的檔案,選擇改寫匯入。如下圖所示:

2)在「資料開發」中查看定時任務,發現資料連結名稱已修改。