kettle 教程(四):自定义 Java 代码

kettle 教程(四):自定义 Java 代码kettle拥有很多自带的组件,能帮我们实现很多的功能。但是我们总有一些很复(qi)杂(pa)的需求,用自带的组件实现不了,或者说实现起来很复杂。那么这时我们就要用到万能的组件了(Java代码),通过自己写代码来实现任何想要的功能。自定义Java代码假设有这样一个需…

大家好,又见面了,我是你们的朋友全栈君。

背景

kettle 拥有很多自带的组件,能帮我们实现很多的功能。

但是我们总有一些很复(qi)杂(pa)的需求,用自带的组件实现不了,或者说实现起来很复杂。那么这时我们就要用到万能的组件了( Java 代码),通过自己写代码来实现任何想要的功能。

自定义 Java 代码

假设有这样一个需求,user 表中有 id , code , name 这三个字段。

如果 code 为空,我们就取 name 的值来代替;

如果 code 不为空,那么就在 code 后面拼接上 “123” 。

当然这个需求不算复杂,用其它的一些组件结合起来也能实现,我们这边只是举个例子,用来介绍 Java 代码这个组件。

我们直接来看流程。

首先还是需要配置数据源(数据源配置可以参考该系列的第一篇文章介绍),并且使用一个表输入:

kettle 教程(四):自定义 Java 代码

接着,我们在左边找到 Java 代码这个组件,拖动到右方,将其与表输入连接起来:

kettle 教程(四):自定义 Java 代码

接着双击 Java 代码,在左侧找到 Main 方法并双击,可以看到右侧自动生成了原始代码:

kettle 教程(四):自定义 Java 代码

在右侧代码编辑区域,写入我们自定义的代码:

kettle 教程(四):自定义 Java 代码

运行一下,我们可以在下方调试区域看到处理前和处理后的值:

kettle 教程(四):自定义 Java 代码

这就是一个简单的自定义 Java 代码的例子,通过几行代码,就能实现原来需要多个组件实现的功能。

通过自定义代码,还能实现计数的功能,如下所示:

kettle 教程(四):自定义 Java 代码

总结

kettle 是一个基于 Java 开发的 ETL 工具,本身自带了一些常用的组件,可以满足一些常用的需求。

而通过 Java 代码这个组件,可以利用代码,来实现任何想要的功能。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/142466.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)
blank

相关推荐

  • tf版安装_国际贸易术语2010图解

    tf版安装_国际贸易术语2010图解TFS2010安装环境是操作系统为WindowsServer2003SP2(X86),WindowsServer2003R2(X86),WindowsServer2003R2SP2(X86),WindowsServer2008,WindowsServer2008R2。必备组件为:IIS,SQLServer2008,SharePoint(WindowsShare

  • fstream 中文路径_gradle files have changed

    fstream 中文路径_gradle files have changed在C++的标准库中,std::fstream是个挺好用的文件读写流,操作文件很方便,因为是C++标准库,所以没有其它的环境依赖。在使用fstream过程中,有个打开中文路径文件会失败的问题,自己的代码中一直没处理好,这几天终于有点闲心,把这里改透。涉及很多知识点,也是个遗留已久的问题,特此做个记录。在最后用了个一劳永逸的解决此问题方法:将fstream、FILE再包装下。中文路径使用fstream调试程序过程中,发现打开含中文路径的文件时,会打开失败。查了一些资料,说在VS2008、vs200..

  • pycharm 2021.4.14激活码失效_通用破解码「建议收藏」

    pycharm 2021.4.14激活码失效_通用破解码,https://javaforall.cn/100143.html。详细ieda激活码不妨到全栈程序员必看教程网一起来了解一下吧!

  • OPENGL 教程网站

    1.http://nehe.gamedev.net/这个是我觉得全世界最知名的OpenGL教程,而且有网友将其中48个教程翻译成了中文http://www.owlei.com/DancingWind/。Nehe教程最大的特点是提供了针对不同平台、不同编译器、不同语言的各种版本。你

  • jetbrains系列软件汉化图文教程

    idea 激活码,jetbrains系列软件汉化图文教程

  • 在java的方法中定义一个常量_c语言中常量和常量表达式的区别

    在java的方法中定义一个常量_c语言中常量和常量表达式的区别如果可能,修改getIndex()方法,使其返回枚举而不是整数.如果无法做到这一点,则需要将索引映射到枚举元素:鉴于以下枚举:publicenumIndex{ONE,TWO,THREE}您可以使用将索引映射到枚举元素Index.values()[index]给定你的方法IntegergetIndex(),你可以做类似的事情switch(Index.values()[getIndex()])…

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号