web应用集成kettle


将kettle集成值web应用中,不再需打开kettle窗口运行,并通过spring自动任务进行数据抽取,数据库采用数据源(jndi)的方式进行管理。配置简单方便。(之前需要kettle打开其运行环境,并配置数据库连接的相关信息)
资源截图
代码片段和文件信息
package com.kettle3.service;

import org.pentaho.di.core.exception.KettleException;
import org.pentaho.di.trans.StepLoader;
import org.pentaho.di.trans.Trans;
import org.pentaho.di.trans.Transmeta;

public class AutoKettleService {
public void executeKettle() throws KettleException {
System.out.println(“执行kettle数据抓取任务开始!“);
try {
StepLoader.init();
} catch (Exception ex) {
ex.printStackTrace();
}
String filePath = getKettleFilePath();
System.out.println(“获取文件路径: “+filePath);
Transmeta meta = new Transmeta(filePath);
Trans trans = new Trans(meta);
trans.execute(null);
trans.waitUntilFinished();
trans.endProcessing(“end“);
System.out.println(“执行kettle数据抓取任务结束!“);
}
/**
 * 获取WEB-INF目录下面kettle_demo_test.ktr文件的路径
 * @return
 */
public static String getKettleFilePath()
{
String path=Thread.currentThread().getContextClassLoader().getResource(““).toString();
path=path.replace(‘/‘ ‘\‘); // 将/换成
path=path.replace(“file:“ ““); //去掉file:
path=path.replace(“classes\“ ““); //去掉class
path=path.substring(1); //去掉第一个如 D:JavaWeb...
path+=“kettle\kettle_demo_test.ktr“;
return path;
}

}

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----
     目录           0  2015-12-05 15:26  kettle3
     文件        2655  2015-12-05 16:34  kettle3.classpath
     文件        1040  2015-12-02 16:01  kettle3.project
     目录           0  2015-12-05 15:10  kettle3.settings
     文件         503  2015-12-02 16:01  kettle3.settings.jsdtscope
     文件         395  2015-12-02 16:00  kettle3.settingsorg.eclipse.jdt.core.prefs
     文件         451  2015-12-02 16:01  kettle3.settingsorg.eclipse.wst.common.component
     文件         345  2015-12-02 16:01  kettle3.settingsorg.eclipse.wst.common.project.facet.core.xml
     文件          49  2015-12-02 16:01  kettle3.settingsorg.eclipse.wst.jsdt.ui.superType.container
     文件           6  2015-12-02 16:01  kettle3.settingsorg.eclipse.wst.jsdt.ui.superType.name
     目录           0  2015-12-05 17:29  kettle3WebContent
     目录           0  2015-12-05 15:10  kettle3WebContentmeta-INF
     文件          39  2015-12-02 16:01  kettle3WebContentmeta-INFMANIFEST.MF
     目录           0  2015-12-05 17:14  kettle3WebContentWEB-INF
     文件        1738  2015-12-05 16:05  kettle3WebContentWEB-INFapplicationContext.xml
     目录           0  2015-12-05 16:34  kettle3WebContentWEB-INFclasses
     目录           0  2015-12-05 16:34  kettle3WebContentWEB-INFclassescom
     目录           0  2015-12-05 16:34  kettle3WebContentWEB-INFclassescomkettle3
     目录           0  2015-12-05 16:34  kettle3WebContentWEB-INFclassescomkettle3service
     文件        2326  2015-12-05 17:24  kettle3WebContentWEB-INFclassescomkettle3serviceAutoKettleService.class
     目录           0  2015-12-05 17:14  kettle3WebContentWEB-INFkettle
     文件        4794  2015-12-05 17:14  kettle3WebContentWEB-INFkettlekettle_demo_test.ktr
     目录           0  2015-12-05 16:34  kettle3WebContentWEB-INFlib
     文件      481534  2015-12-02 16:42  kettle3WebContentWEB-INFlibapache-logging-log4j.jar
     文件      188671  2015-12-02 16:42  kettle3WebContentWEB-INFlibcommons-beanutils-1.7.0.jar
     文件      559366  2015-12-02 16:42  kettle3WebContentWEB-INFlibcommons-collections-3.1.jar
     文件      143602  2015-12-02 16:42  kettle3WebContentWEB-INFlibcommons-digester-1.8.jar
     文件       52915  2015-12-02 16:42  kettle3WebContentWEB-INFlibcommons-logging-1.1.jar
     文件      409795  2015-12-02 16:42  kettle3WebContentWEB-INFlibcommons-vfs-2.0-20090205.jar
     文件      285638  2015-12-05 16:07  kettle3WebContentWEB-INFlibjtds-1.2.jar
     文件      330469  2015-12-02 16:42  kettle3WebContentWEB-INFlibkettle-core.jar
............此处省略23个文件信息

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

发表评论

评论列表(条)