开发技术:KETTLE JAVA API 开发实战记录
前言:
为什么要用Kettle和KETTLE Java API?
Kettle是什么?kettle:是一个开源ETL工具。kettle提供了基于java的图形化界面,使用很方便,kettle的ETL工具集合也比较多,常用的ETL工具都包含了。
为什么使用KETTLE JAVA API:就像kettle文档所说:KETTLE JAVA API : Program your own Kettle transformation,kettle提供了基于JAVA的脚步编写功能,可以灵活地自定义ETL过程,使自行定制、批量处理等成为可能,这才是一个程序员需要做的工作,而不仅是象使用Word一样操作kettle用户界面。
KETTLE JAVA API 实战操作记录:
一、 搭建环境 :到http://www.kettle.be网站下载kettle的源码包,加压缩,例如解压缩到d:kettle目录
二、 打开eclipse,新建一个项目,要使用jdk1.5.0,因为kettle的要使用System.getenv(),只有在jdk1.5.0才被支持。提起getenv(),似乎有一段几起几落的记录,曾一度被抛弃,现在又被jdk1.5支持了。
三、 建一个class : TransBuilder.java,可以把d:kettle extraTransBuilder.java的内容原样拷贝到你的TransBuilder.java里。
四、 根据需要编辑源码。并需要对原程序进行如下修改,在头部增加:
import org.eclipse.swt.dnd.Transfer;
//这个包被遗漏了,原始位置kettle根目录 libswtwin32swt.jar
//add by chq(www.chq.name) on 2006.07.20
(后来发现,不必加这个引用,因为编译时不需要)
五、 编译预备,在eclipse中增加jar包,主要包括(主要依据extraTransBuilder.bat):
libkettle.jar
libextCacheDB.jar
libextSQLBaseJDBC.jar
libextactivation.jar
libextdb2jcc.jar
libextdb2jcc_license_c.jar
libextedtFTPj-1.4.5.jar
libextfirebirdsql-full.jar
libextfirebirdsql.jar
libextgis-shape.jar
libexthsqldb.jar
libextifxjdbc.jar
libextjavadbf.jar
libextjconn2.jar
libextjs.jar
libextjt400.jar
libextjtds-1.1.jar
libextjxl.jar
libextktable.jar
libextlog4j-1.2.8.jar
libextmail.jar
libextmysql-connector-java-3.1.7-bin.jar
libextojdbc14.jar
libextorai18n.jar
libextpg74.215.jdbc3.jar
libextedbc.jar
(注重 :下面这个包被遗漏了,要加上。原始位置kettle根目录libswtwin32swt.jar)
libswtwin32swt.jar
六、 编译成功后,预备运行
为使程序不必登陆就可以运行,需要设置环境署文件:kettle.properties,位置在用户目录里,一般在 Documents and Settings用户.kettle,主要内容如下:
KETTLE_REPOSITORY=kettle@m80
KETTLE_USER=admin
KETTLE_PASSWORD=passwd
七、 好了,现在可以运行一下了,看看数据是不是已经拷贝到目标表了。
以下为修改后的程序源码:
++++++++++++++++++++++++++++++++
- 上一篇:常用JAVA方法
- 下一篇:Josephus算法的JAVA语言实现