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);