Kettle資料庫資源庫連線執行示例
1、初始化
Kettle環境:
org.pentaho.di.core.KettleEnvironment
KettleEnvironment.init();
2、建立
Kettle資料庫資源庫:
org.pentaho.di.repository.kdr.
KettleDatabaseRepository
// 此時的資源庫物件倉庫還是個空物件
KettleDatabaseRepository repository = new KettleDatabaseRepository();
3、建立資源庫的資料庫連線:
org.pentaho.di.core.database.DatabaseMeta
DatabaseMeta databaseMeta = new DatabaseMeta("melo", "Oracle", "Native", "10.40.11.206", "orcl1", "1521", "melodemo", "melodemo");
![](https://img-blog.csdnimg.cn/20201011151048428.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L2xpX2NodW5sb25n,size_16,color_FFFFFF,t_70)
4、建立資料庫資源庫元資訊:
org.pentaho.di.repository.kdr.KettleDatabaseRepositoryMeta
id、名稱、描述可隨意定義,不重複即可
KettleDatabaseRepositoryMeta kettleDatabaseMeta = new KettleDatabaseRepositoryMeta("melo", "melo", "melo", databaseMeta);
5、可資料庫資源庫初始化賦值
repository.init(kettleDatabaseMeta);
6、連線資料庫資源庫
repository.connect("admin", "admin");
7、根據目錄地址獲取
Kettle目錄物件:
org.pentaho.di.repository.RepositoryDirectoryInterface
RepositoryDirectoryInterface directory = repository.findDirectory("/melo");
8、獲取資料庫資源庫中的
ktr xml元資訊:
org.pentaho.di.trans.TransMeta
TransMeta transMeta = ((Repository) repository).loadTransformation("melo", directory, null, true, null);
9、獲取xml內容,可放在Kettle視覺化工具中執行檢視
String xmlContent = transMeta.getXML();
10、建立Transform ktr物件:
org.pentaho.di.trans.Trans
Trans trans = new Trans(transMeta);
11、執行
Transform
trans.execute(null);
trans.waitUntilFinished(); // 等待執行完畢
12、獲取執行異常結果
if (trans.getErrors() > 0)
System.err.println("Transformation run Failure!");
else
System.out.println("Transformation run successfully!");
13、獲取
Transform執行影響資料量
System.out.println(trans.getLastProcessed());
相關文章
- kettle資源庫連線失效不見了
- Kettle自定義資料庫連線型別連線HGDB資料庫型別
- 資料來源連線資料庫資料庫
- ssh埠轉發(之kettle ssh方式連線資料庫)資料庫
- Kettle8.2連線Oracle資料庫失敗解決方法Oracle資料庫
- 【MySQL】自定義資料庫連線池和開源資料庫連線池的使用MySql資料庫
- 用Navicat連線資料庫-資料庫連線(MySQL演示)資料庫MySql
- 連線資料庫資料庫
- 資料庫連線資料庫
- kettle通過命令列引數傳遞資料庫連線資訊命令列資料庫
- kettle建立資源庫Incorrect integer value
- JDBC連線資料庫JDBC資料庫
- java連線資料庫Java資料庫
- Mybatis連線資料庫MyBatis資料庫
- Mongodb資料庫連線MongoDB資料庫
- mysqli連線資料庫MySql資料庫
- 資料庫的連線資料庫
- 連線mysql資料庫MySql資料庫
- 資料庫連線池資料庫
- 資料庫連線==odbc資料庫
- 資料庫連線字串資料庫字串
- java 無需建立資料來源連線access資料庫Java資料庫
- MySql連線資料庫常用引數及程式碼示例MySql資料庫
- Spring-Data-Mongodb資料庫連線程式碼示例SpringMongoDB資料庫線程
- 《四 資料庫連線池原始碼》手寫資料庫連線池資料庫原始碼
- 資料庫連線池-Druid資料庫連線池原始碼解析資料庫UI原始碼
- (轉)PHP連線資料庫之PHP連線MYSQL資料庫程式碼PHP資料庫MySql
- 「資料庫、資料庫連線池、資料來源」這些概念你真的理解了嗎?資料庫
- 1.3.3.5. 步驟4:執行SQL*Plus 連線資料庫命令SQL資料庫
- 求助!關於多執行緒連線資料庫的問題執行緒資料庫
- 【資料庫】使用DBever連線人大金倉資料庫資料庫
- django | 連線mysql資料庫DjangoMySql資料庫
- Rust 連線 PostgreSQL 資料庫RustSQL資料庫
- PHP 連線access資料庫PHP資料庫
- Mybatis配置資料庫連線MyBatis資料庫
- 資料庫連線池原理資料庫
- 使用Sequelize連線資料庫資料庫
- C#連線資料庫C#資料庫