java中调用kettle转换文件
来源:互联网 发布:2017超好听的网络歌曲 编辑:程序博客网 时间:2024/06/05 05:01
通过命令行也能够调用,然后java中调用命令行代码也能够。这样没有和java代码逻辑无缝集成。本文说明kettle5.1中假设通过其它API和java代码无缝集成;网上大多数资料都是低版本号的。在kettle5.x中已经不能执行。
1、 须要哪些jar文件
以kettle开头的是必须,上图最以下三个也要;红色框中的两个是我測试转换用到的。各自是生成UUID和文件。
要是少了jar文件,执行程序一定报错。大家依据错误到kettle安装文件夹LIB中找对应的jar加到编译路径中。
2、 官网:www.fhadmin.org 演示样例说明怎样通过java调用转换
演示样例是把一个excel的内容导入到数据中。excel仅仅有两列,所以须要在kettle中生成一列uuid,然后导入到数据库中。
默认生成的uuid有‘-’间隔符,所以通过“Replace in string”替换为空;
excel步骤,使用了命名參数,所以要在转换配置设置命名參数。
演示样例代码例如以下官网:www.fhadmin.org :
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<String,String> paras) { try { KettleEnvironment.init(); TransMeta transMeta = new TransMeta(fullFileName); Trans transformation =new Trans(transMeta); for(Map.Entry<String, String> 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<String,String> para = new HashMap<String,String>(); //给转换中命名參数赋值 para.put("XlsName", "data"); etl.runTransformation(para); }}
阅读全文
0 0
- java中调用kettle转换文件
- java中调用kettle转换文件
- java中调用kettle转换文件
- Java项目中调用Kettle转换
- kettle中调用java类
- Java调用Kettle执行任务或转换
- java 整合Web调用kettle本地转换
- Kettle调用Java文件(Jar包)
- Java集成kettle调用trans文件
- Kettle调用Java文件(Jar包)
- Kettle调用Java文件(Jar包)
- BI:Java调用Kettle执行任务或转换
- Java-动态传参调用kettle转换和作业
- Kettle java调用
- java调用Kettle总结
- Kettle java调用
- kettle 中Modified Java Script Value插件调用java代码
- java调用kettle中的资源库文件(job\trans)
- 1、C程序 数组排序之[冒泡排序法]
- Python爬虫基础
- 毕业两个月总结-第一篇博客
- mysql 更改编码格式(以utf8为例)
- 前端数据传到后台的方法
- java中调用kettle转换文件
- Kapacitor常用操作
- Font-End(理论知识)
- Android开发:最全面、最易懂的Android屏幕适配解决方案
- springMVC参数绑定失败原因
- angular2笔记--依赖注入
- centos6.9上beego环境搭建与测试
- spring的@Transactional注解详细用法
- Linux下elasticsearch 2.3.3安装