Kettle学习笔记012之使用Java执行Kettle作业

本文介绍了如何在Java中利用Kettle的API执行Kettle作业和转换。首先,需要从Kettle的lib目录获取核心jar包和数据库驱动,并导入到Java项目。然后,通过创建并配置数据库连接、加载作业或转换元数据,以及设置作业参数,可以执行资源库中的作业。示例代码包括运行作业、转换以及资源库中的作业。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

前言:

Kettle提供一些API,Java通过调用这些API去执行Kettle作业,转换。

 

第一步:搭建Kettle运行环境

data-integration\lib\目录下复制部分核心jar包出来,导入到java项目(jdk1.8)中。

所需jar包如下(不要忘了数据库连接驱动):

 

2. 代码示例(作业,转换,资源库)

ackage com.staroon.kettle.exec;

import org.pentaho.di.core.KettleEnvironment;
import org.pentaho.di.core.database.DatabaseMeta;
import org.pentaho.di.core.logging.LogLevel;
import org.pentaho.di.core.util.EnvUtil;
import org.pentaho.di.job.Job;
import org.pentaho.di.job.JobMeta;
import org.pentaho.di.repository.RepositoryDirectoryInterface;
import org.pentaho.di.repository.kdr.KettleDatabaseRepository;
import org.pentaho.di.repository.kdr.KettleDatabaseRepositoryMeta;
import org.pentaho.di.trans.Trans;
import org.pentaho.di.trans.TransMeta;
import java.util.HashMap;
import java.util.Map;

public class RunKettleJob {
    public static void main(String[] args) {

        // 参数列表
        Map<String, String> params = new HashMap<>();
        params.put("filename", "runjob");
        params.put("extend", "txt");

        String kjbPath = "D:/kettle/jobs/Kettledoc/常规作业示例.kjb";
        String ktrPath = "D:/kettle/jobs/Kettledoc/转换任务.ktr";
//        runJob(params, kjbPath);
//        runTrans(params, ktrPath);
        runRepoJob(params);
    }

    /**
     * 运行资源库中的作业
     *
     * @param params 作业参数
     */
    public static void runRepoJob

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值