龙盟编程博客 | 无障碍搜索 | 云盘搜索神器
快速搜索
主页 > 软件开发 > JAVA开发 >

开发技术:KETTLE JAVA API 开发实战记录

时间:2009-12-23 15:42来源:未知 作者:admin 点击:
分享到:
前言: 为什么要用Kettle和KETTLE Java API? Kettle是什么?kettle:是一个开源ETL工具。kettle提供了基于java的图形化界面,使用很方便,kettle的ETL工具集合也比较多,常用的ETL工具都包含了。

  前言:

  为什么要用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

   

  七、         好了,现在可以运行一下了,看看数据是不是已经拷贝到目标表了。

   

  以下为修改后的程序源码:

  ++++++++++++++++++++++++++++++++

  
  

精彩图集

赞助商链接