永发信息网

怎样用kettle做一个中间件

答案:1  悬赏:10  手机版
解决时间 2021-04-26 05:01
怎样用kettle做一个中间件
最佳答案

public static void main(String[] args) {
String datetime = "2014-12-19 23:20:45";
String[] params = {"707", datetime}; // 传递参数
String path = "F:\\job7.kjb";

// runTransfer(params, path);
runJob(params, path);
// runJob();
// jbResource();

}


public static void runTransfer(String[] params, String ktrPath) {
Trans trans = null;
try {
// // 初始化
// 转换元对象
KettleEnvironment.init();// 初始化
EnvUtil.environmentInit();
TransMeta transMeta = new TransMeta(ktrPath);
// 转换
trans = new Trans(transMeta);

// 执行转换
trans.execute(params);
// 等待转换执行结束
trans.waitUntilFinished();
// 抛出异常
if (trans.getErrors() > 0) {
throw new Exception(
"There are errors during transformation exception!(传输过程中发生异常)");
}
} catch (Exception e) {
e.printStackTrace();
}
}


public static void runJob(String[] params, String jobPath) {
try {
KettleEnvironment.init();
// jobname 是Job脚本的路径及名称
JobMeta jobMeta = new JobMeta(jobPath, null);
Job job = new Job(null, jobMeta);
// 向Job 脚本传递参数,脚本中获取参数值:${参数名}
// job.setVariable(paraname, paravalue);
job.setVariable("id", params[0]);
job.setVariable("dt", params[1]);
job.start();
job.waitUntilFinished();
if (job.getErrors() > 0) {
throw new Exception(
"There are errors during job exception!(执行job发生异常)");
}
} catch (Exception e) {
e.printStackTrace();
}
}
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
40多岁的母亲快生日了,送什么礼物呢?送手链
我的QQ上不去?是怎么回事?
我是山东的、我想买个3g无限上网卡、但是我出
明月湖宾馆怎么去啊,有知道地址的么
怎么样通过银行筹资
QQ三国 09特惠中礼包好还是09特惠小礼包好?
求动画无罪的维纳斯
用一句话赞美古城泉州,用一句话形容湖南凤凰
公积金 贷款
笔记本买什么牌子的最好
青岛科技大学几个校区啊 ??
如果地球没有水.没有电.没有火.我们就需要一
平安大楼在哪里啊,我有事要去这个地方
为什么我DNF登录了,到选人物的页面就自动关
为什么我重装系统后磁盘总是被完全格式化?
推荐资讯
热血英豪这造型还有其他的颜色吗
请介绍一些好听的歌
怎么样让别人看到自己命名的QQ音乐名字?
下一站天后第二部什么时候出啊
岳坝镇计划生育服务站这个地址在什么地方,我
哺乳期母乳为何会自动溢出
我手机是科摩999的怎样联没宽带的电脑上网,须
中国的女明星中那为的舞技最好最强最最最好?
有什么搞笑的电影啊?
魏晨在什么地方开演唱会
跪求金融街在北京的具体位置
要怎么让一个人下班后心情放松?
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?