版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/qqfo24/article/details/82761359
背景
kettle 拥有很多自带的组件,能帮我们实现很多的功能。

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

自定义 Java 代码
假设有这样一个需求,user 表中有 id , code , name 这三个字段。

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

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

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

我们直接来看流程。

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

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

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

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

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

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

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

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

而通过 Java 代码这个组件,可以利用代码,来实现任何想要的功能
————————————————
版权声明:本文为CSDN博主「yujunyi_」的原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/qqfo24/article/details/82761359

kettle 教程(四):自定义 Java 代码相关推荐

  1. Kettle变量和自定义java代码的实例应用

    1  kettle.properties参数配置数据源连接和FTP连接 由于测试环境和生产环境中数据库连接FTP等配置会在部署过程中变更,所以预先定义成配置项,在配置文件中修改,这样测试和发布将会变得 ...

  2. 【es】ELASTICSEARCH之自定义JAVA代码的安全策略管理

    1.概述 转载:[es]ELASTICSEARCH之自定义JAVA代码的安全策略管理 在我们首次使用intellij直接运行elasticsearch的源代码的时候,我们必然会碰到下边这样一个安全性的 ...

  3. kettle案例四使用java脚本进行数据处理

    如需转载请标明出处:直到世界的尽头-张小凡-http://my.525.life 本章我们学习使用java脚本进行数据处理. 数据情况 以嵌套Json结构为例进行解析,Json如下: { " ...

  4. MongoDB最简单的入门教程之三 使用Java代码往MongoDB里插入数据

    前两篇教程我们介绍了如何搭建MongoDB的本地环境. 这篇教程我们会介绍如何使用Java代码来连接MongoDB. 如果您是基于Maven进行依赖管理的Java项目,只需要在您的pom.xml里加入 ...

  5. 如何在Mirth Connect中创建和调用自定义Java代码

    0-前言 本文章将向您展示如何创建自定义Java类,将其编译/打包到JAR中,将其包含在Mirth Connect在,并在JavaScript中调用它,您可以从任何JavaScript上下文调用自定义 ...

  6. 微信公众号开发教程(四)自定义菜单

    作者:陈惠,叩丁狼教育高级讲师.原创文章,转载请注明出处. 本篇文章,我们来做一个最常见的,也是用户最喜欢使用的功能--自定义菜单. 因为菜单只需要点一下就可以获取需要的信息,无需用户手动输入关键字, ...

  7. pytorch系列教程(四)-自定义损失函数

    前言 很多时候,在pytorch中并没有提供我们所需要的损失函数,但是pytorch却提供了许多自定义损失函数的方法    自定义函数函数 1.通过nn.Module类来实现自定义的损失函数 我们来看 ...

  8. kettle中java组件_kettle系列-[KettleUtil]kettle插件,类似kettle的自定义java类控件

    该kettle插件功能类似kettle现有的定义java类插件,自定java类插件主要是支持在kettle中直接编写java代码实现自定特殊功能,而本控件主要是将自定义代码转移到jar包,就是说自定义 ...

  9. 智能合约转java_第四章 自定义sol合约转化java代码,并实现调用

    鉴于笔者以前各大博客教程都有很多人提问,早期建立一个技术交流群,里面技术体系可能比较杂,想了解相关区块链开发,技术提问,请加QQ群:538327407 准备工作 1.官方参考说明文档 2.已经在ubu ...

最新文章

  1. PMP®考试是什么机构
  2. 解读ASP.NET 5 MVC6系列(7):依赖注入
  3. C语言 __LINE__ - C语言零基础入门教程
  4. Java关于周跨年的周数计算
  5. 3种语言白色汇汇通微盘程序源码
  6. 2016年最佳微小说系列
  7. [转]20款Notepad++插件下载和介绍
  8. Linux 系统常用命令
  9. 零基础怎么学习单片机?
  10. 系统学习NLP(三十)--词向量对齐
  11. 最方便简单的经纬度查询方法
  12. pgloader:Heap exhausted ,game over
  13. java smart单点登录_SmartBi 单点登录的实现
  14. Java面试官经验谈:如何甄别候选人真实的能力,候选人如何展示值钱技能
  15. 棒棒糖也能画成图—— ggplot2绘制棒棒糖图/哑铃图
  16. lsb_release 提示命令不存在
  17. 全球与中国湿式剃须刀市场深度研究分析报告
  18. JMeter基础 — JMeter聚合报告详解
  19. 《单核工作法图解》阅读摘要
  20. 防火墙技术之----包过滤(Packet Filter)

热门文章

  1. 面经系列:2020年联发科技数字IC设计岗
  2. 永磁同步电机矢量控制中的双闭环是什么意思_【百问百答】ST 电机控制实战问答合辑 | 连载之二...
  3. 计算机毕业设计题目100例
  4. 剑灵洪门崛起怎么修改服务器,剑灵洪门崛起新手操作指南 剑灵洪门崛起新手必看攻略...
  5. HTML5七夕情人节表白网页制作【JS烟花表白】HTML+CSS+JavaScript 烟花表白代码 html烟花告白源码
  6. 明日直播:如何在RT-Thread上使用TFLite Micro实现AI相机?
  7. python通过url获取文件名和文件的后缀
  8. ffmpeg将图片合成视频
  9. vue页面路由跳转重复报错的问题
  10. MP地面站二次开发教程(五)简易地面站多机控制系统框架