org.pentaho.di.core.database.Database.disconnect()方法的使用及代码示例

x33g5p2x  于2022-01-18 转载在 其他  
字(7.4k)|赞(0)|评价(0)|浏览(214)

本文整理了Java中org.pentaho.di.core.database.Database.disconnect()方法的一些代码示例,展示了Database.disconnect()的具体用法。这些代码示例主要来源于Github/Stackoverflow/Maven等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。Database.disconnect()方法的具体详情如下:
包路径:org.pentaho.di.core.database.Database
类名称:Database
方法名:disconnect

Database.disconnect介绍

[英]Disconnect from the database and close all open prepared statements.
[中]断开与数据库的连接并关闭所有打开的准备好的语句。

代码示例

代码示例来源:origin: pentaho/pentaho-kettle

  1. @Override
  2. public void dispose( StepMetaInterface smi, StepDataInterface sdi ) {
  3. meta = (TableCompareMeta) smi;
  4. data = (TableCompareData) sdi;
  5. if ( data.referenceDb != null ) {
  6. data.referenceDb.disconnect();
  7. }
  8. if ( data.compareDb != null ) {
  9. data.compareDb.disconnect();
  10. }
  11. super.dispose( smi, sdi );
  12. }

代码示例来源:origin: pentaho/pentaho-kettle

  1. public void dispose( StepMetaInterface smi, StepDataInterface sdi ) {
  2. meta = (DatabaseJoinMeta) smi;
  3. data = (DatabaseJoinData) sdi;
  4. if ( data.db != null ) {
  5. data.db.disconnect();
  6. }
  7. super.dispose( smi, sdi );
  8. }
  9. }

代码示例来源:origin: pentaho/pentaho-kettle

  1. public void dispose( StepMetaInterface smi, StepDataInterface sdi ) {
  2. meta = (TableExistsMeta) smi;
  3. data = (TableExistsData) sdi;
  4. if ( data.db != null ) {
  5. data.db.disconnect();
  6. }
  7. super.dispose( smi, sdi );
  8. }
  9. }

代码示例来源:origin: pentaho/pentaho-kettle

  1. public void dispose( StepMetaInterface smi, StepDataInterface sdi ) {
  2. meta = (DynamicSQLRowMeta) smi;
  3. data = (DynamicSQLRowData) sdi;
  4. if ( data.db != null ) {
  5. data.db.disconnect();
  6. }
  7. super.dispose( smi, sdi );
  8. }
  9. }

代码示例来源:origin: pentaho/pentaho-kettle

  1. @Override
  2. public void dispose( StepMetaInterface smi, StepDataInterface sdi ) {
  3. meta = (DatabaseLookupMeta) smi;
  4. data = (DatabaseLookupData) sdi;
  5. if ( data.db != null ) {
  6. data.db.disconnect();
  7. }
  8. // Recover memory immediately, allow in-memory data to be garbage collected
  9. //
  10. data.cache = null;
  11. super.dispose( smi, sdi );
  12. }

代码示例来源:origin: pentaho/pentaho-kettle

  1. public void dispose( StepMetaInterface smi, StepDataInterface sdi ) {
  2. meta = (ColumnExistsMeta) smi;
  3. data = (ColumnExistsData) sdi;
  4. if ( data.db != null ) {
  5. data.db.disconnect();
  6. }
  7. super.dispose( smi, sdi );
  8. }
  9. }

代码示例来源:origin: pentaho/pentaho-kettle

  1. public void dispose( StepMetaInterface smi, StepDataInterface sdi ) {
  2. meta = (GetTableNamesMeta) smi;
  3. data = (GetTableNamesData) sdi;
  4. if ( data.db != null ) {
  5. data.db.disconnect();
  6. data.db = null;
  7. }
  8. super.dispose( smi, sdi );
  9. }

代码示例来源:origin: pentaho/pentaho-kettle

  1. void dispose() throws Exception {
  2. try {
  3. if ( loader != null ) {
  4. loader.stop();
  5. }
  6. loader = null;
  7. } finally {
  8. if ( db != null ) {
  9. db.disconnect();
  10. }
  11. db = null;
  12. }
  13. }
  14. }

代码示例来源:origin: pentaho/pentaho-kettle

  1. public void run( IProgressMonitor monitor ) throws InvocationTargetException, InterruptedException {
  2. db = new Database( Spoon.loggingObject, dbMeta );
  3. try {
  4. db.connect();
  5. result = db.getQueryFields( sql, false );
  6. if ( monitor.isCanceled() ) {
  7. throw new InvocationTargetException( new Exception( "This operation was cancelled!" ) );
  8. }
  9. } catch ( Exception e ) {
  10. throw new InvocationTargetException( e, "Problem encountered determining query fields: " + e.toString() );
  11. } finally {
  12. db.disconnect();
  13. }
  14. }
  15. };

代码示例来源:origin: pentaho/pentaho-kettle

  1. private void disconnectDb( Database db ) throws KettleDatabaseException {
  2. if ( db == null ) {
  3. return;
  4. }
  5. if ( !db.isAutoCommit() ) {
  6. db.commit( true );
  7. }
  8. db.disconnect();
  9. }

代码示例来源:origin: pentaho/pentaho-kettle

  1. private RowMetaInterface getTableFields( LoggingObjectInterface parentLoggingObject ) throws KettleDatabaseException {
  2. Database database = new Database( parentLoggingObject, databaseMeta );
  3. try {
  4. database.connect();
  5. return database.getTableFields( schemaTable );
  6. } finally {
  7. database.disconnect();
  8. }
  9. }

代码示例来源:origin: pentaho/pentaho-kettle

  1. @Override
  2. public void dispose( StepMetaInterface smi, StepDataInterface sdi ) {
  3. meta = (ExecSQLMeta) smi;
  4. data = (ExecSQLData) sdi;
  5. if ( log.isBasic() ) {
  6. logBasic( BaseMessages.getString( PKG, "ExecSQL.Log.FinishingReadingQuery" ) );
  7. }
  8. if ( data.db != null ) {
  9. data.db.disconnect();
  10. }
  11. super.dispose( smi, sdi );
  12. }

代码示例来源:origin: pentaho/pentaho-kettle

  1. protected void checkConnection() throws KettleDatabaseException {
  2. // check connection
  3. // connect and disconnect
  4. Database dbchecked = null;
  5. try {
  6. dbchecked = new Database( this, connection );
  7. dbchecked.shareVariablesWith( this );
  8. dbchecked.connect( parentJob.getTransactionId(), null );
  9. } finally {
  10. if ( dbchecked != null ) {
  11. dbchecked.disconnect();
  12. }
  13. }
  14. }

代码示例来源:origin: pentaho/pentaho-kettle

  1. @Test
  2. public void jobFail_columnNotExist() throws KettleException {
  3. doReturn( db ).when( jobEntry ).getNewDatabaseFromMeta();
  4. doNothing().when( db ).connect( anyString(), anyString() );
  5. doReturn( true ).when( db ).checkTableExists( anyString(), anyString() );
  6. doReturn( false ).when( db ).checkColumnExists( anyString(), anyString(), anyString() );
  7. final Result result = jobEntry.execute( new Result(), 0 );
  8. assertEquals( "Should be some errors", 1, result.getNrErrors() );
  9. assertFalse( "Result should be false", result.getResult() );
  10. verify( db, atLeastOnce() ).disconnect();
  11. }

代码示例来源:origin: pentaho/pentaho-kettle

  1. @Test
  2. public void jobSuccess() throws KettleException {
  3. doReturn( db ).when( jobEntry ).getNewDatabaseFromMeta();
  4. doNothing().when( db ).connect( anyString(), anyString() );
  5. doReturn( true ).when( db ).checkColumnExists( anyString(), anyString(), anyString() );
  6. doReturn( true ).when( db ).checkTableExists( anyString(), anyString() );
  7. final Result result = jobEntry.execute( new Result(), 0 );
  8. assertEquals( "Should be no error", 0, result.getNrErrors() );
  9. assertTrue( "Result should be true", result.getResult() );
  10. assertEquals( "Lines written", COLUMNS.length, result.getNrLinesWritten() );
  11. verify( db, atLeastOnce() ).disconnect();
  12. }
  13. }

代码示例来源:origin: pentaho/pentaho-kettle

  1. @Test
  2. public void jobFail_tableNotExist() throws KettleException {
  3. when( jobEntry.getNewDatabaseFromMeta() ).thenReturn( db );
  4. doNothing().when( db ).connect( anyString(), any() );
  5. doReturn( false ).when( db ).checkTableExists( anyString(), anyString() );
  6. final Result result = jobEntry.execute( new Result(), 0 );
  7. assertEquals( "Should be error", 1, result.getNrErrors() );
  8. assertFalse( "Result should be false", result.getResult() );
  9. verify( db, atLeastOnce() ).disconnect();
  10. }

代码示例来源:origin: pentaho/pentaho-kettle

  1. public void run( IProgressMonitor monitor ) throws InvocationTargetException, InterruptedException {
  2. db = new Database( Spoon.loggingObject, dbMeta );
  3. try {
  4. db.connect();
  5. if ( limit > 0 ) {
  6. db.setQueryLimit( limit );
  7. }
  8. rows = db.getFirstRows( tableName, limit, new ProgressMonitorAdapter( monitor ) );
  9. rowMeta = db.getReturnRowMeta();
  10. } catch ( KettleException e ) {
  11. throw new InvocationTargetException( e, "Couldn't find any rows because of an error :" + e.toString() );
  12. } finally {
  13. db.disconnect();
  14. }
  15. }
  16. };

代码示例来源:origin: pentaho/pentaho-kettle

  1. @Override
  2. public RowMetaInterface getTableFields() {
  3. RowMetaInterface fields = null;
  4. if ( databaseMeta != null ) {
  5. Database db = createDatabaseObject();
  6. try {
  7. db.connect();
  8. fields = db.getTableFieldsMeta( schemaName, tableName );
  9. } catch ( KettleDatabaseException dbe ) {
  10. logError( BaseMessages.getString( PKG, "DimensionLookupMeta.Log.DatabaseErrorOccurred" ) + dbe.getMessage() );
  11. } finally {
  12. db.disconnect();
  13. }
  14. }
  15. return fields;
  16. }

代码示例来源:origin: pentaho/pentaho-kettle

  1. public boolean getInputData() {
  2. // Get some data...
  3. RipDatabaseWizardPage1 page1 = (RipDatabaseWizardPage1) getPreviousPage();
  4. Database sourceDb = new Database( RipDatabaseWizard.loggingObject, page1.getSourceDatabase() );
  5. try {
  6. sourceDb.connect();
  7. input = sourceDb.getTablenames( false ); // Don't include the schema since it can cause invalid syntax
  8. } catch ( KettleDatabaseException dbe ) {
  9. new ErrorDialog( shell, "Error getting tables", "Error obtaining table list from database!", dbe );
  10. input = null;
  11. return false;
  12. } finally {
  13. sourceDb.disconnect();
  14. }
  15. return true;
  16. }

代码示例来源:origin: pentaho/pentaho-kettle

  1. public void dispose( StepMetaInterface smi, StepDataInterface sdi ) {
  2. meta = (AddSequenceMeta) smi;
  3. data = (AddSequenceData) sdi;
  4. if ( meta.isCounterUsed() ) {
  5. if ( data.getLookup() != null ) {
  6. getTrans().getCounters().remove( data.getLookup() );
  7. }
  8. data.counter = null;
  9. }
  10. if ( meta.isDatabaseUsed() ) {
  11. if ( data.getDb() != null ) {
  12. data.getDb().disconnect();
  13. }
  14. }
  15. super.dispose( smi, sdi );
  16. }

相关文章