• 运用Java调用Kettle Job和Trans(带参数)


    1.首先创建一个kettle trans

    image

    2.对表输入进行编辑

    image

    ${dateNow}为要传入的参数。

    3.代码编写

    首先需要把包导入

    image

    import org.pentaho.di.core.KettleEnvironment;
    import org.pentaho.di.core.exception.KettleException;
    import org.pentaho.di.job.Job;
    import org.pentaho.di.job.JobMeta;
    import org.pentaho.di.trans.Trans;
    import org.pentaho.di.trans.TransMeta;
    
    
    public class KettleTest {
    
        /**包
         * @param args
         * @throws KettleException 
         */
        public static void runJob(String jobFile) throws KettleException{
            KettleEnvironment.init();
            JobMeta jm = new JobMeta(jobFile,null);
            Job job = new Job(null,jm);
            job.setVariable("dateNow", "2016-01-05");
            job.start();
            job.waitUntilFinished();
        }
        
        public static void runTrans(String transFile) throws KettleException{
            KettleEnvironment.init();
            TransMeta tm = new TransMeta(transFile);
            Trans trans = new Trans(tm);
            trans.setVariable("dateNow", "2016-01-03");
            trans.execute(null);
            trans.waitUntilFinished();
        }
        public static void main(String[] args) {
            // TODO Auto-generated method stub
            String fileName = "F:\zcr\工作空间\kettleWorkSpace\kettleTrans.ktr";
            try {
                runTrans(fileName);
            } catch (KettleException e) {
                // TODO Auto-generated catch block
                e.printStackTrace();
            }
    
        }
    
    }

    trans 通过 Trans.setVariable(String,String)传递参数。

    第一个参数就是ktr中的变量,比如上面的${dateNow}。我们可以通过Trans.setVariable(dateNow,”2016-01-05”)这个个函数把2016-01-05这个字符串赋给dateNow

    Job通过Job.setVariable(String,String)传递参数,用法和trans用法一致。

  • 相关阅读:
    python模块的作用和说明
    Python列表推导式和嵌套的列表推导式
    Python数据结构 将列表作为栈和队列使用
    Python解包参数列表及 Lambda 表达式
    Python函数标注
    Python range() 函数
    python序列和其它类型的比较
    Python教程 深入条件控制
    02爬虫requests请求库
    1
  • 原文地址:https://www.cnblogs.com/zcr3108346262/p/6530404.html
Copyright © 2020-2023  润新知