GalaxyPilot —— D.S


                  生命不熄,戰(zhàn)斗不止
          數據加載中……

          java調用kettle4.2數據庫型資料庫中的轉換

          import org.pentaho.di.core.KettleEnvironment;
          import org.pentaho.di.core.database.DatabaseMeta;
          import org.pentaho.di.core.exception.KettleException;
          import org.pentaho.di.repository.Repository;
          import org.pentaho.di.repository.RepositoryDirectoryInterface;
          import org.pentaho.di.repository.kdr.KettleDatabaseRepository;
          import org.pentaho.di.repository.kdr.KettleDatabaseRepositoryMeta;
          import org.pentaho.di.trans.Trans;
          import org.pentaho.di.trans.TransMeta;

          /**
           * <p>Title: java調用kettle4.2數據庫型資料庫中的轉換</p>
           * <p>Description: </p>
           * <p>Copyright: Copyright () 2012</p>
           * @author 舵手
           * @version
           */

          public class ExecRepositoryTrans {

              private static String transName = "Trans";

              public static void main(String[] args) {

                  try {
                      KettleEnvironment.init();
                      
                      KettleDatabaseRepository repository = new KettleDatabaseRepository();
                      
                      DatabaseMeta databaseMeta = new DatabaseMeta("repository", "MSSQL","Native","192.169.0.146", "repository", "1433", "sa", "sa");
                      
                      KettleDatabaseRepositoryMeta kettleDatabaseMeta = new KettleDatabaseRepositoryMeta("repository", "ERP", "Transformation description",databaseMeta );
                      
                      repository.init(kettleDatabaseMeta);
                      
                      repository.connect("admin","admin");
                      
                      RepositoryDirectoryInterface directory = repository.loadRepositoryDirectoryTree();

                      TransMeta transformationMeta = ((Repository) repository).loadTransformation(transName, directory, null, true, null ) ;

                      Trans trans = new Trans( transformationMeta );
                      //trans.setParameterValue( parameterName, parameterValue);
                      trans.execute(null);
                      trans.waitUntilFinished();
                      if ( trans.getErrors() > 0 ) {                    
                          System.out.println("Error running transformation.");
                      }else{
                          System.out.println("Transformation run successfully.");
                      }
                  } catch (KettleException e) {
                      e.printStackTrace();
                  }
              }

          }

          posted on 2012-07-25 16:00 舵手 閱讀(2539) 評論(3)  編輯  收藏

          評論

          # re: java調用kettle4.2數據庫型資料庫中的轉換  回復  更多評論   

          這段代碼Pan.java里面也有
          2012-07-25 17:51 | 夏天的太陽

          # re: java調用kettle4.2數據庫型資料庫中的轉換  回復  更多評論   

          我寫這幾行代碼費了不少事,早知道就不這么費事了。

          搜遍kettle的安裝目錄,只找到org.pentaho.di.pan.Pan.class
          反編譯也沒有,不知夏天說的Pan.java在什么位置?
          2012-07-25 19:45 | 舵手

          # re: java調用kettle4.2數據庫型資料庫中的轉換[未登錄]  回復  更多評論   

          package org.pentaho.di.pan;

          import java.io.InputStream;
          import java.text.SimpleDateFormat;
          import java.util.ArrayList;
          import java.util.Calendar;
          import java.util.Date;
          import java.util.List;

          import org.pentaho.di.core.Const;
          import org.pentaho.di.core.JndiUtil;
          import org.pentaho.di.core.database.Database;
          import org.pentaho.di.core.exception.KettleException;
          import org.pentaho.di.core.logging.LogWriter;
          import org.pentaho.di.core.parameters.NamedParams;
          import org.pentaho.di.core.parameters.NamedParamsDefault;
          import org.pentaho.di.core.util.EnvUtil;
          import org.pentaho.di.core.xml.XMLHandler;
          import org.pentaho.di.job.JobEntryLoader;
          import org.pentaho.di.repository.RepositoriesMeta;
          import org.pentaho.di.repository.Repository;
          import org.pentaho.di.repository.RepositoryDirectory;
          import org.pentaho.di.repository.RepositoryMeta;
          import org.pentaho.di.repository.UserInfo;
          import org.pentaho.di.trans.StepLoader;
          import org.pentaho.di.trans.Trans;
          import org.pentaho.di.trans.TransMeta;
          import org.pentaho.di.version.BuildVersion;
          import org.w3c.dom.Document;


          public class Pan
          {
          2012-09-30 07:56 | owen

          只有注冊用戶登錄后才能發(fā)表評論。


          網站導航:
           
          主站蜘蛛池模板: 大新县| 德钦县| 武清区| 新疆| 建始县| 西林县| 龙海市| 盘锦市| 延安市| 富平县| 房产| 亚东县| 察哈| 玛多县| 郁南县| 遂溪县| 崇明县| 江源县| 西安市| 攀枝花市| 阳春市| 霍州市| 冕宁县| 清河县| 蕲春县| 客服| 霍邱县| 隆子县| 晋中市| 阳信县| 云龙县| 贡山| 青田县| 嘉鱼县| 紫金县| 太康县| 思南县| 台山市| 长岛县| 元阳县| 安龙县|