最新文章专题视频专题问答1问答10问答100问答1000问答2000关键字专题1关键字专题50关键字专题500关键字专题1500TAG最新视频文章推荐1 推荐3 推荐5 推荐7 推荐9 推荐11 推荐13 推荐15 推荐17 推荐19 推荐21 推荐23 推荐25 推荐27 推荐29 推荐31 推荐33 推荐35 推荐37视频文章20视频文章30视频文章40视频文章50视频文章60 视频文章70视频文章80视频文章90视频文章100视频文章120视频文章140 视频2关键字专题关键字专题tag2tag3文章专题文章专题2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章专题3
当前位置: 首页 - 科技 - 知识百科 - 正文

java中调用kettle转换文件

来源:动视网 责编:小采 时间:2020-11-09 14:19:57
文档

java中调用kettle转换文件

java中调用kettle转换文件:java中调用kettle转换文件 通过命令行也可以调用,然后java中调用命令行代码也可以;这样没有和java代码逻辑无缝集成。本文说明kettle5.1中如果通过其他API和java代码无缝集成;网上大多数资料都是低版本的,在kettle5.x中已经不能运行。 1、 需要哪些
推荐度:
导读java中调用kettle转换文件:java中调用kettle转换文件 通过命令行也可以调用,然后java中调用命令行代码也可以;这样没有和java代码逻辑无缝集成。本文说明kettle5.1中如果通过其他API和java代码无缝集成;网上大多数资料都是低版本的,在kettle5.x中已经不能运行。 1、 需要哪些


java中调用kettle转换文件 通过命令行也可以调用,然后java中调用命令行代码也可以;这样没有和java代码逻辑无缝集成。本文说明kettle5.1中如果通过其他API和java代码无缝集成;网上大多数资料都是低版本的,在kettle5.x中已经不能运行。 1、 需要哪些jar文

java中调用kettle转换文件

通过命令行也可以调用,然后java中调用命令行代码也可以;这样没有和java代码逻辑无缝集成。本文说明kettle5.1中如果通过其他API和java代码无缝集成;网上大多数资料都是低版本的,在kettle5.x中已经不能运行。

1、 需要哪些jar文件

以kettle开头的是必须,上图最下面三个也要;红色框中的两个是我测试转换用到的,分别是生成UUID和文件。

要是少了jar文件,运行程序一定报错,大家根据错误到kettle安装目录LIB中找相应的jar加到编译路径中。

2、 示例说明如何通过java调用转换

示例是把一个excel的内容导入到数据中,excel只有两列,所以需要在kettle中生成一列uuid,然后导入到数据库中。

默认生成的uuid有‘-’间隔符,所以通过“Replace in string”替换为空;

excel步骤,使用了命名参数,所以要在转换配置设置命名参数。

示例代码如下:

publicclass KettleUtil2 {

 public String RES_DIR = "res";

 private String fullFileName ;

 

 public KettleUtil2(String fileName){

 fullFileName = System.getProperty("user.dir") + File.separator + RES_DIR;

 fullFileName += File.separator + fileName;

 }

 /**

 * 没有参数是,设置参数为null

 * @param paras

 */

 publicvoid runTransformation(Map paras) {

 try {

 KettleEnvironment.init();

 

 TransMeta transMeta = new TransMeta(fullFileName);

 Trans transformation =new Trans(transMeta);

 

 for(Map.Entry entry: paras.entrySet()) {

 transformation.setParameterValue(entry.getKey(), entry.getValue());

 }

 

 transformation.execute(null);

 transformation.waitUntilFinished();

 

 if (transformation.getErrors() > 0) {

 thrownew RuntimeException(

 "There wereerrors during transformation execution.");

 }

 } catch (KettleException e) {

 System.out.println(e);

 }

 }

}

最后调用代码如下:

publicclass EtlTest {

 publicstaticvoid main(String[] args) {

 KettleUtil2 etl = new KettleUtil2("testimport.ktr");

 Map para = new HashMap();

 //给转换中命名参数赋值

 para.put("XlsName", "data");

 etl.runTransformation(para);

 }

}

文档

java中调用kettle转换文件

java中调用kettle转换文件:java中调用kettle转换文件 通过命令行也可以调用,然后java中调用命令行代码也可以;这样没有和java代码逻辑无缝集成。本文说明kettle5.1中如果通过其他API和java代码无缝集成;网上大多数资料都是低版本的,在kettle5.x中已经不能运行。 1、 需要哪些
推荐度:
标签: 转换 文件 如何
  • 热门焦点

最新推荐

猜你喜欢

热门推荐

专题
Top