java 调用kettle api实现数据同步
- - 开源软件 - ITeye博客* 数据库连接信息,适用于DatabaseMeta其中 一个构造器DatabaseMeta(String xml). transMeta.setName("转换名称");. //将step日志数据库配置名加入到变量集中. //StepLogTable使用的数据库连接名(上面配置的变量名). //设置Step日志的表名. 
CREATE TABLE `t_lzfx_data_log` ( `ID` bigint(20) NOT NULL AUTO_INCREMENT, `ID_BATCH` int(11) DEFAULT '0', `CHANNEL_ID` varchar(255) DEFAULT NULL, `TRANSNAME` varchar(255) DEFAULT NULL, `STEPNAME` varchar(200) DEFAULT NULL, `STEP_COPY` int(11) DEFAULT NULL, `LINES_READ` int(11) DEFAULT NULL, `LINES_WRITTEN` int(11) DEFAULT NULL, `LINES_UPDATED` int(11) DEFAULT NULL, `LINES_INPUT` int(11) DEFAULT NULL, `LINES_OUTPUT` int(11) DEFAULT NULL, `LINES_REJECTED` int(11) DEFAULT NULL, `ERRORS` int(11) DEFAULT NULL, `LOG_FIELD` blob, `LOG_DATE` datetime DEFAULT NULL, PRIMARY KEY (`ID`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
 VariableSpace space = new Variables();  
	        //将step日志数据库配置名加入到变量集中  
	        space.setVariable("kettle_log","bjdt");
	        space.initializeVariablesFrom(null);  
	        StepLogTable stepLogTable = StepLogTable.getDefault(space,transMeta);
	        //StepLogTable使用的数据库连接名(上面配置的变量名)。  
	        stepLogTable.setConnectionName("bjdt");
	        //设置Step日志的表名  
	        stepLogTable.setTableName(kettle_log); 
	        //设置TransMeta的StepLogTable  
	        transMeta.setStepLogTable(stepLogTable);