3、springboot 整合 kettle

一、加载jar包到项目

kettle-core-7.0.0.0-25.jar

kettle-engine-7.0.0.0-25.jar

metastore-7.0.0.0-25.jar

 
以上三个 jar 包在 kettle 下的 lib 目录下,将其放进项目的 lib 目录下,执行maven命令引入项目:
mvn install:install-file -Dfile=/data/apps/studyP/kettleDemo/lib/kettle-core-7.0.0.0-25.jar  -DgroupId=pentaho-kettle -DartifactId=kettle-core -Dversion=7.0.0.0-25 -Dpackaging=jar
mvn install:install-file -Dfile=/data/apps/studyP/kettleDemo/lib/kettle-engine-7.0.0.0-25.jar  -DgroupId=pentaho-kettle -DartifactId=kettle-engine -Dversion=7.0.0.0-25 -Dpackaging=jar
mvn install:install-file -Dfile=/data/apps/studyP/kettleDemo/lib/metastore-7.0.0.0-25.jar  -DgroupId=pentaho-kettle -DartifactId=metastore -Dversion=7.0.0.0-25 -Dpackaging=jar

 

  • 引入依赖
<!-- 集成kettle -->
<dependency>
    <groupId>pentaho-kettle</groupId>
    <artifactId>kettle-core</artifactId>
    <version>7.0.0.0-25</version>
</dependency>
<dependency>
    <groupId>pentaho-kettle</groupId>
    <artifactId>kettle-engine</artifactId>
    <version>7.0.0.0-25</version>
</dependency>
<dependency>
    <groupId>pentaho-kettle</groupId>
    <artifactId>metastore</artifactId>
    <version>7.0.0.0-25</version>
</dependency>


<dependency>
    <groupId>org.apache.commons</groupId>
    <artifactId>commons-vfs2</artifactId>
    <version>2.1</version>
</dependency>
<dependency>
    <groupId>com.google.guava</groupId>
    <artifactId>guava</artifactId>
    <version>27.1-jre</version>
</dependency>
<dependency>
    <groupId>commons-io</groupId>
    <artifactId>commons-io</artifactId>
    <version>2.2</version>
</dependency>
<dependency>
    <groupId>commons-lang</groupId>
    <artifactId>commons-lang</artifactId>
    <version>2.6</version>
</dependency>
<dependency>
    <groupId>cn.hutool</groupId>
    <artifactId>hutool-all</artifactId>
    <version>4.5.6</version>
</dependency>

 

 
  • 执行kettle 脚本代码
@Test
public void test() throws KettleException {
    // 初始化
    KettleEnvironment.init();


    // 加载文件
    TransMeta transMeta = new TransMeta("C:\\Users\\lenovo\\Desktop\\klg_test_qy.ktr");
    Trans trans = new Trans(transMeta);


    // 放入参数,这里其实可以从数据库中取到,如果没有参数,可以把这步忽略
    // trans.setParameterValue("stade", "2019-04-24");
    trans.prepareExecution(null);
    trans.startThreads();
    trans.waitUntilFinished();
}

 

  • 参考
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章