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 代码这个组件,可以利用代码,来实现任何想要的功能。

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

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

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • WebApp开发实践

    WebApp开发实践网上购物网站(以出售软件为例)webApp开发由Java实现,运用了jdbc,jsp,servlet,jQueryFlot图表等技术,数据库为SqlServer2008,仅供参考学习,转载文章需注明:一、后台实现(1)用户的登入:(2)修改密码:(3)软件管理:(4)软件上新:(5)订单管理:(6)编辑公告:二、前台实现:(1)会员登录与注册模块:(2)搜索…

    2022年6月17日
    41
  • python 字符串方法isdigit()

    python 字符串方法isdigit()

    2021年10月22日
    76
  • springboot 之 使用jasypt加密解密插件[通俗易懂]

    springboot 之 使用jasypt加密解密插件[通俗易懂]简单使用jasypt是一个java实现的安全框架1、该工具支持注解方式开启jasypt功能,以及注解方式引入一个或多个需要处理的配置文件。 2、该工具同时支持properties与yml文件的解析处理。 3、该工具支持自定义加解密类型和复写加解密方法。引入插件<dependency> <groupId>com.github.ulisesbocchio&…

    2022年9月25日
    0
  •  到底什么作用

     到底什么作用

    2021年9月22日
    48
  • laravel artisan常用命令[通俗易懂]

    laravel artisan常用命令[通俗易懂]laravel artisan常用命令

    2022年4月24日
    42
  • mysql listagg函数_Oracle函数之LISTAGG「建议收藏」

    mysql listagg函数_Oracle函数之LISTAGG「建议收藏」最近在学习的过程中,发现一个挺有意思的Oracle函数,它可实现对列值的拼接。下面我们来看看其具体用法。最近在学习的过程中,发现一个挺有意思的Oracle函数,它可实现对列值的拼接。下面我们来看看其具体用法。用法:对其作用,官方文档的解释如下:Foraspecifiedmeasure,LISTAGGordersdatawithineachgroupspecifiedinth…

    2022年9月6日
    2

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

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