大家好,又见面了,我是你们的朋友全栈君。
背景
kettle 拥有很多自带的组件,能帮我们实现很多的功能。
但是我们总有一些很复(qi)杂(pa)的需求,用自带的组件实现不了,或者说实现起来很复杂。那么这时我们就要用到万能的组件了( Java 代码
),通过自己写代码来实现任何想要的功能。
自定义 Java 代码
假设有这样一个需求,user 表中有 id , code , name 这三个字段。
如果 code 为空,我们就取 name 的值来代替;
如果 code 不为空,那么就在 code 后面拼接上 “123” 。
当然这个需求不算复杂,用其它的一些组件结合起来也能实现,我们这边只是举个例子,用来介绍 Java 代码
这个组件。
我们直接来看流程。
首先还是需要配置数据源(数据源配置可以参考该系列的第一篇文章介绍),并且使用一个表输入:
接着,我们在左边找到 Java 代码这个组件,拖动到右方,将其与表输入连接起来:
接着双击 Java 代码,在左侧找到 Main 方法并双击,可以看到右侧自动生成了原始代码:
在右侧代码编辑区域,写入我们自定义的代码:
运行一下,我们可以在下方调试区域看到处理前和处理后的值:
这就是一个简单的自定义 Java 代码的例子,通过几行代码,就能实现原来需要多个组件实现的功能。
通过自定义代码,还能实现计数的功能,如下所示:
总结
kettle 是一个基于 Java 开发的 ETL 工具,本身自带了一些常用的组件,可以满足一些常用的需求。
而通过 Java 代码
这个组件,可以利用代码,来实现任何想要的功能。
发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/142466.html原文链接:https://javaforall.cn
【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛
【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...