Java向kettle8.0传递参数的方式总结

 更新时间:2025年01月02日 08:48:04   作者:苏格哈希  
介绍了如何在Kettle中传递参数到转换和作业中,包括设置全局properties、使用TransMeta和JobMeta的parameterValue,以及通过EL表达式获取参数值

1.传递参数到转换中

1.1. 通过设置Trans的variable的key、value值

1.2. 源码中,直接将我们的key、value存放到了全局的properties中

1.3. 在转化中可直接通过EL表达式获取参数:${yourkey}

1.4. 通过设置转换中的parameterValue的key、value值

1.5. params是从我们定义的命名参数中解析的map

1.6. 命名参数的key必须和我们传入的key值向同才能将value值存放至params中,在kettle中同样通过EL表达式获取数据${yourkey}

2.传递参数到作业中

2.1. 通过设置全局的properties将我们的参数传递给kettle,如果作业中包含了转换,需要保证key值不能冲突

2.2. 通过设置JobMeta的parameterValue可将参数传递给kettle,创建JobMeta时kettle会解析对应得xml格式的.kjb文件,并初始化命名参数的map,创建Job对象kettle并不会像创建Trans那样将TransMeta中的命名参数复制给Trans,所以此时的Job中的命名参数size为0,如果通过job.setParameterValue()函数并不能将我们的参数传递给kettle。

2.3. kettle源码中,初始value值为空字符串,需要在job中设定命名参数的变量名作为key值才能将自己的参数对应传递给kettle,接下来在对应需要使用的地方用EL表达式即可获取${yourkey}

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • java打jar包与找不到依赖包的问题

    java打jar包与找不到依赖包的问题

    这篇文章主要介绍了java打jar包与找不到依赖包的问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2024-01-01
  • Java中的IP地址和InetAddress类使用详解

    Java中的IP地址和InetAddress类使用详解

    这篇文章主要介绍了Java中的IP地址和InetAddress类使用详解,是Java入门学习中的基础知识,需要的朋友可以参考下
    2015-10-10
  • 使用Jenkins来构建SVN+Maven项目的实现

    使用Jenkins来构建SVN+Maven项目的实现

    这篇文章主要介绍了使用Jenkins来构建SVN+Maven项目的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-09-09
  • 深入理解JAVA多线程之线程间的通信方式

    深入理解JAVA多线程之线程间的通信方式

    下面小编就为大家带来一篇深入理解JAVA多线程之线程间的通信方式。小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2016-05-05
  • Java图论的两个基本概念之有向图与无向图详解

    Java图论的两个基本概念之有向图与无向图详解

    图论是数学的一个基本分支,涉及对图研究,图是复杂数据结构的可视化表示,有助于理解不同实体之间的关系,这篇文章主要介绍了Java图论的两个基本概念之有向图与无向图的相关资料,需要的朋友可以参考下
    2026-03-03
  • 深入分析Java异常

    深入分析Java异常

    本篇文章给大家详细分享了关于Java异常的相关知识点,对此有需要的朋友跟着学习下吧。
    2018-05-05
  • IDEA 使用 SpotBugs 找出你代码中的bug问题

    IDEA 使用 SpotBugs 找出你代码中的bug问题

    这篇文章主要介绍了IDEA 使用 SpotBugs 找出你代码中的bug问题,重点给大家介绍SpotBugs 在 idea 中的安装和使用,感兴趣的朋友跟随小编一起看看吧
    2021-07-07
  • java配置文件取值的多种方式总结

    java配置文件取值的多种方式总结

    这篇文章主要为大家详细介绍了java配置文件取值的多种方式,包括一般项目,国际化项目,springboot项目,文中的示例代码讲解详细,需要的可以参考下
    2023-11-11
  • 浅谈Java面向对象之内部类

    浅谈Java面向对象之内部类

    内部类是一个非常有用的特性但又比较难理解使用的特性,我们从外面看是非常容易理解的,无非就是在一个类的内部在定义一个类。其实使用内部类最大的优点就在于它能够非常好的解决多重继承的问题
    2021-06-06
  • 详解Huffman编码算法之Java实现

    详解Huffman编码算法之Java实现

    Huffman编码是一种编码方式,常用于无损压缩。本文只介绍用Java语言来实现该编码方式的算法和数据结构。有兴趣的可以了解一下。
    2016-12-12

最新评论