talend open studio(TOS)有自定义组件开发模块,默认视图中可能不会显示,需要在Windows-perspective-Component Designer中打开。
第一次进入到component开发界面中是不能新建component项目或者打开component的,需要先在TOS中设置一下:
1、修改Windows-preferences-Talend-Components中的User component folder,指定一个文件夹作为自定义组件存放的地址,重启TOS之后该文件夹中的组件会自动加载到Palette中。
2、修改Windows-preferences-Talend Component Designer中的Component project地址,指定一个文件夹作为开发component的工作目录。
设置完成之后就可以进行talend组件开发了。
Talend组件一般包含三部分,begin,main和end。begin部分一般是用来初始化控件中的内容,main部分是进行内部逻辑的实现和循环的,end部分则是关闭循环,做最后结束的逻辑。新建一个component组件之后,可以在图形界面选择该组件拥有多少部分,可以选择组件的图标,添加组件中会用到jar包等。最后一步则是设置这个组件的配置xml,包括组件的声明,包含在哪类控件的文件夹下,可以使用哪些连接类型,包含哪些参数,返回值等等。
除了可以新建组件,也可以在组件开发界面打开TOS自带组件:右键点击组件开发项目,点击copy components from palette,选择需要打开的组件就可以了。这个办法会将系统自带组件copy到咱们自定义组件的文件夹下,参考这些自带组件可以帮助我们在不了解talend组件开发的情况下进行开发,例如组件中xml的设置,各部分的内容的写法等。
Talend组件开发主要使用的是java jet技术。java jet有一个很明显的特点:被<%和%>包含在里面的是jet引擎处理的部分,这部分可以是从xml中读取出来的变量或值,也可以是逻辑判断,尖括号外面的是生成的代码。java代码就是这样就通过各个模块的组合来构成的。
当我们进行talend的job开发时,实际上就只是开发了一个XML文件,里面包含了我们需要用到的talend组件以及组件中的变量和参数。而talend编译的过程,就是从job的xml中读取变量和元素的内容,通过jet引擎生成java代码,然后再由java代码生成jar包。