日本综合一区二区|亚洲中文天堂综合|日韩欧美自拍一区|男女精品天堂一区|欧美自拍第6页亚洲成人精品一区|亚洲黄色天堂一区二区成人|超碰91偷拍第一页|日韩av夜夜嗨中文字幕|久久蜜综合视频官网|精美人妻一区二区三区

RELATEED CONSULTING
相關(guān)咨詢
選擇下列產(chǎn)品馬上在線溝通
服務(wù)時間:8:30-17:00
你可能遇到了下面的問題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營銷解決方案
kettle的文件批量入庫功能是怎樣實現(xiàn)的

kettle的文件批量入庫功能是怎樣實現(xiàn)的,相信很多沒有經(jīng)驗的人對此束手無策,為此本文總結(jié)了問題出現(xiàn)的原因和解決方法,通過這篇文章希望你能解決這個問題。

創(chuàng)新互聯(lián)專注于道縣網(wǎng)站建設(shè)服務(wù)及定制,我們擁有豐富的企業(yè)做網(wǎng)站經(jīng)驗。 熱誠為您提供道縣營銷型網(wǎng)站建設(shè),道縣網(wǎng)站制作、道縣網(wǎng)頁設(shè)計、道縣網(wǎng)站官網(wǎng)定制、微信小程序開發(fā)服務(wù),打造道縣網(wǎng)絡(luò)公司原創(chuàng)品牌,更為您提供道縣網(wǎng)站排名全網(wǎng)營銷落地服務(wù)。

kettle 除了作為 ETL 工具外,還有很多數(shù)據(jù)處理方面的實用功能,下面介紹幾個實用的小功能。

1. 文件批量入庫
該功能可以將一個目錄下的全部或部分文件加載到數(shù)據(jù)庫中。

第一步: “獲取文件名” 步驟獲取一個目錄下的文件名,使用一個正則表達式來指定文件名。

指定了 E:/opensource/kettle-trunk/ui/images 目錄下所有以 .png 結(jié)尾的文件名。在這個步驟里創(chuàng)建了下面幾個字段來描述所有獲取的文件:

FILENAME,
SHORT_FILENAME,
PATH,
TYPE,
EXISTS,
ISHIDDEN,
ISREADABLE,
ISWRITEABLE,
LASTMODIFIEDTIME,
SIZE,
EXTENSION,
URI,
ROOTURI

第二步: 使用一個 javascript 腳本,讀取文件內(nèi)容,如果你不想把文件內(nèi)容入庫,可以不用這一步。下面是 javascript 腳本的內(nèi)容:


file = new Packages.java.io.File(filename.getString());
fileInputStream = new Packages.java.io.FileInputStream(file);
var content = Packages.org.pentaho.di.core.Const.createByteArray(file.length());
fileInputStream.read(content, 0, file.length());
fileInputStream.close();

不要忘了,選中 “獲取變量” 按鈕,將 content 也作為一個輸出字段, 類型 Binary。

第三步:“表輸出”,將前兩個步驟獲得的字段,輸出到數(shù)據(jù)庫的表里。如果數(shù)據(jù)庫里沒有相應(yīng)的表,需要使用 “SQL” 按鈕獲得并執(zhí)行創(chuàng)建表的 SQL 語句。

通過這三個步驟可以將文件名,文件屬性,文件內(nèi)容都保存到數(shù)據(jù)庫里,

如果文件是二進制文件,文件內(nèi)容一般保存為 BLOB 、Binary 、Image 等類型。

如果文件是字符型文件,文件內(nèi)容一般保存為 CLOB 、varchar、Text 等類型。

注意:因為該方法是一次性將文件內(nèi)容都讀到了內(nèi)存中,因此只能處理比較小的文件。

看完上述內(nèi)容,你們掌握kettle的文件批量入庫功能是怎樣實現(xiàn)的的方法了嗎?如果還想學(xué)到更多技能或想了解更多相關(guān)內(nèi)容,歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道,感謝各位的閱讀!


分享題目:kettle的文件批量入庫功能是怎樣實現(xiàn)的
網(wǎng)站地址:http://www.dlmjj.cn/article/ppdped.html