Java调用ETL工具Kettle
来源:互联网 发布:日本留学生中国知乎 编辑:程序博客网 时间:2024/05/21 09:27
import org.pentaho.di.core.KettleEnvironment;
import org.pentaho.di.core.exception.KettleException;
import org.pentaho.di.trans.Trans;
import org.pentaho.di.trans.TransMeta;
public class KettleUtil {
//private static Log log = LogFactory.getLog(KettleUtil.class);
public static String TRANSFORMATION_MSG = "";// 转换过程中错误异常.
public static int ERR_SEQUENCE = 1; // 错误序列
/**
* @Title: runTransformation
* @Class: KettleUtil.java
* @Package: com.tware.rent.common
* @Description: Excel导入数据
*
* @param ktrPath
* kettle文件路径
* @param excelPath
* Excel文件路径
* @return
*
*/
public void runTransformation(String ktrPath, String excelPath) {
try {
KettleEnvironment.init();
TransMeta transMeta = new TransMeta(ktrPath);
Trans trans = new Trans(transMeta);
System.getProperties().put("excel_path", excelPath);
trans.prepareExecution(null);
trans.startThreads();
trans.waitUntilFinished();
if (trans.getErrors() != 0) {
KettleUtil.setTransformationMsg("Excel:" + excelPath + "导入失败!<br>");
}
} catch (KettleException e) {
e.printStackTrace();
}
}
/** * @Title: runTransformation * @Class: KettleUtil.java * @Package: com.tware.rent.common * @Description: 导出数据到Excel * * @param ktrPath
* kettle文件路径
* @param excelPath
* Excel文件路径
* @param excelTemplate
* Excel模版
* @return
*
*/
public void runTransformation(String ktrPath, String excelPath, String excelTemplate) {
try {
if (excelTemplate == null || "".equals(excelTemplate)) {
excelTemplate = "";
}
KettleEnvironment.init();
TransMeta transMeta = new TransMeta(ktrPath);
Trans trans = new Trans(transMeta);
System.getProperties().put("excel_path", excelPath);
System.getProperties().put("excelTemplate", excelTemplate);
trans.prepareExecution(null);
trans.startThreads();
trans.waitUntilFinished();
if (trans.getErrors() != 0) {
KettleUtil.setTransformationMsg("Excel:" + excelPath + "导出失败!<br>");
}
} catch (KettleException e) {
e.printStackTrace();
}
}
/**
* @Title: setTransformationMsg
* @Class: KettleUtil.java
* @Package: com.tware.rent.common
* @Description: 错误消息
*
* @param exceptionMsg
*
*/
public static void setTransformationMsg(String exceptionMsg) {
if (exceptionMsg != "") {
TRANSFORMATION_MSG += "错误" + ERR_SEQUENCE + ":" + exceptionMsg;
ERR_SEQUENCE++;
}
}
}
import org.pentaho.di.core.exception.KettleException;
import org.pentaho.di.trans.Trans;
import org.pentaho.di.trans.TransMeta;
public class KettleUtil {
//private static Log log = LogFactory.getLog(KettleUtil.class);
public static String TRANSFORMATION_MSG = "";// 转换过程中错误异常.
public static int ERR_SEQUENCE = 1; // 错误序列
/**
* @Title: runTransformation
* @Class: KettleUtil.java
* @Package: com.tware.rent.common
* @Description: Excel导入数据
*
* @param ktrPath
* kettle文件路径
* @param excelPath
* Excel文件路径
* @return
*
*/
public void runTransformation(String ktrPath, String excelPath) {
try {
KettleEnvironment.init();
TransMeta transMeta = new TransMeta(ktrPath);
Trans trans = new Trans(transMeta);
System.getProperties().put("excel_path", excelPath);
trans.prepareExecution(null);
trans.startThreads();
trans.waitUntilFinished();
if (trans.getErrors() != 0) {
KettleUtil.setTransformationMsg("Excel:" + excelPath + "导入失败!<br>");
}
} catch (KettleException e) {
e.printStackTrace();
}
}
/** * @Title: runTransformation * @Class: KettleUtil.java * @Package: com.tware.rent.common * @Description: 导出数据到Excel * * @param ktrPath
* kettle文件路径
* @param excelPath
* Excel文件路径
* @param excelTemplate
* Excel模版
* @return
*
*/
public void runTransformation(String ktrPath, String excelPath, String excelTemplate) {
try {
if (excelTemplate == null || "".equals(excelTemplate)) {
excelTemplate = "";
}
KettleEnvironment.init();
TransMeta transMeta = new TransMeta(ktrPath);
Trans trans = new Trans(transMeta);
System.getProperties().put("excel_path", excelPath);
System.getProperties().put("excelTemplate", excelTemplate);
trans.prepareExecution(null);
trans.startThreads();
trans.waitUntilFinished();
if (trans.getErrors() != 0) {
KettleUtil.setTransformationMsg("Excel:" + excelPath + "导出失败!<br>");
}
} catch (KettleException e) {
e.printStackTrace();
}
}
/**
* @Title: setTransformationMsg
* @Class: KettleUtil.java
* @Package: com.tware.rent.common
* @Description: 错误消息
*
* @param exceptionMsg
*
*/
public static void setTransformationMsg(String exceptionMsg) {
if (exceptionMsg != "") {
TRANSFORMATION_MSG += "错误" + ERR_SEQUENCE + ":" + exceptionMsg;
ERR_SEQUENCE++;
}
}
}
- Java调用ETL工具Kettle
- kettle ETL java 调用 kettle job 或 transfer
- kettle ETL java 调用 kettle job 或 transfer
- 关于ETL 工具 kettle
- 开源ETL工具 Kettle
- ETL工具 kettle
- etl工具kettle
- java调用kettle工具类
- Etl工具之Kettle与java集成二
- ETL工具kettle与JAVA结合使用程序生成转换
- 开源ETL工具kettle系列
- 开源ETL工具kettle系列
- 开源ETL工具kettle<转>
- kettle定时执行(ETL工具)
- etl工具,kettle实现循环
- ETL工具kettle spoon使用说明
- ETL工具kettle源码编译
- 开源ETL工具 Pentaho Kettle
- 加载图片Image方法
- Git中含Submodule时Maven项目如何release
- Linux命令行快捷键
- 统计学生信息
- Tomcat 8 和 Apache2.2.25
- Java调用ETL工具Kettle
- 黑马程序员---Java高新技术学习笔记(中篇)
- 通用sql行变列
- asp.net发送邮件的代码
- 难受的时候就看一会,不要让自己太累
- iOS 关于tag值
- 4.25 小结
- Asp的学习!
- 【PAT Advanced Level】1020. Tree Traversals (25)