org.apache.ibatis.session.Configuration.newExecutor()方法的使用及代码示例

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

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

Configuration.newExecutor介绍

暂无

代码示例

代码示例来源:origin: hs-web/hsweb-framework

private SqlSession openSessionFromConnection(ExecutorType execType, Connection connection) {
  try {
    boolean autoCommit;
    try {
      autoCommit = connection.getAutoCommit();
    } catch (SQLException e) {
      // Failover to true, as most poor drivers
      // or databases won't support transactions
      autoCommit = true;
    }
    final Environment environment = configuration.getEnvironment();
    final TransactionFactory transactionFactory = getTransactionFactoryFromEnvironment(environment);
    final Transaction tx = transactionFactory.newTransaction(connection);
    final Executor executor = configuration.newExecutor(tx, execType);
    return new DefaultSqlSession(configuration, executor, autoCommit);
  } catch (Exception e) {
    throw ExceptionFactory.wrapException("Error opening session.  Cause: " + e, e);
  } finally {
    ErrorContext.instance().reset();
  }
}

代码示例来源:origin: abel533/Mapper

Executor keyExecutor = configuration.newExecutor(executor.getTransaction(), ExecutorType.SIMPLE);
List<Object> values = keyExecutor.query(keyStatement, parameter, RowBounds.DEFAULT, Executor.NO_RESULT_HANDLER);
if (values.size() == 0) {

代码示例来源:origin: abel533/Mapper

Executor keyExecutor = configuration.newExecutor(executor.getTransaction(), ExecutorType.SIMPLE);
List<Object> values = keyExecutor.query(keyStatement, parameter, RowBounds.DEFAULT, Executor.NO_RESULT_HANDLER);
if (values.size() == 0) {

代码示例来源:origin: camunda/camunda-bpm-platform

public Executor newExecutor(Transaction transaction) {
 return newExecutor(transaction, defaultExecutorType);
}

代码示例来源:origin: org.mybatis/mybatis

public Executor newExecutor(Transaction transaction) {
 return newExecutor(transaction, defaultExecutorType);
}

代码示例来源:origin: hs-web/hsweb-framework

@SuppressWarnings("all")
private SqlSession openSessionFromDataSource(ExecutorType execType, TransactionIsolationLevel level, boolean autoCommit) {
  Transaction tx = null;
  try {
    final Environment environment = getConfiguration().getEnvironment();
    final TransactionFactory transactionFactory = getTransactionFactoryFromEnvironment(environment);
    DataSource ds = DataSourceHolder.currentDataSource().getNative();
    if (ds == null) {
      ds = environment.getDataSource();
    }
    tx = transactionFactory.newTransaction(ds, level, autoCommit);
    final Executor executor = getConfiguration().newExecutor(tx, execType);
    return new DefaultSqlSession(getConfiguration(), executor, autoCommit);
  } catch (Exception e) {
    closeTransaction(tx); // may have fetched a connection so lets call close()
    throw ExceptionFactory.wrapException("Error opening session.  Cause: " + e, e);
  } finally {
    ErrorContext.instance().reset();
  }
}

代码示例来源:origin: camunda/camunda-bpm-platform

private SqlSession openSessionFromConnection(ExecutorType execType, Connection connection) {
 try {
  boolean autoCommit;
  try {
   autoCommit = connection.getAutoCommit();
  } catch (SQLException e) {
   // Failover to true, as most poor drivers
   // or databases won't support transactions
   autoCommit = true;
  }      
  final Environment environment = configuration.getEnvironment();
  final TransactionFactory transactionFactory = getTransactionFactoryFromEnvironment(environment);
  final Transaction tx = transactionFactory.newTransaction(connection);
  final Executor executor = configuration.newExecutor(tx, execType);
  return new DefaultSqlSession(configuration, executor, autoCommit);
 } catch (Exception e) {
  throw ExceptionFactory.wrapException("Error opening session.  Cause: " + e, e);
 } finally {
  ErrorContext.instance().reset();
 }
}

代码示例来源:origin: org.mybatis/mybatis

private SqlSession openSessionFromConnection(ExecutorType execType, Connection connection) {
 try {
  boolean autoCommit;
  try {
   autoCommit = connection.getAutoCommit();
  } catch (SQLException e) {
   // Failover to true, as most poor drivers
   // or databases won't support transactions
   autoCommit = true;
  }
  final Environment environment = configuration.getEnvironment();
  final TransactionFactory transactionFactory = getTransactionFactoryFromEnvironment(environment);
  final Transaction tx = transactionFactory.newTransaction(connection);
  final Executor executor = configuration.newExecutor(tx, execType);
  return new DefaultSqlSession(configuration, executor, autoCommit);
 } catch (Exception e) {
  throw ExceptionFactory.wrapException("Error opening session.  Cause: " + e, e);
 } finally {
  ErrorContext.instance().reset();
 }
}

代码示例来源:origin: camunda/camunda-bpm-platform

private Executor newExecutor() {
 final Environment environment = configuration.getEnvironment();
 if (environment == null) {
  throw new ExecutorException("ResultLoader could not load lazily.  Environment was not configured.");
 }
 final DataSource ds = environment.getDataSource();
 if (ds == null) {
  throw new ExecutorException("ResultLoader could not load lazily.  DataSource was not configured.");
 }
 final TransactionFactory transactionFactory = environment.getTransactionFactory();
 final Transaction tx = transactionFactory.newTransaction(ds, null, false);
 return configuration.newExecutor(tx, ExecutorType.SIMPLE);
}

代码示例来源:origin: org.mybatis/mybatis

private Executor newExecutor() {
 final Environment environment = configuration.getEnvironment();
 if (environment == null) {
  throw new ExecutorException("ResultLoader could not load lazily.  Environment was not configured.");
 }
 final DataSource ds = environment.getDataSource();
 if (ds == null) {
  throw new ExecutorException("ResultLoader could not load lazily.  DataSource was not configured.");
 }
 final TransactionFactory transactionFactory = environment.getTransactionFactory();
 final Transaction tx = transactionFactory.newTransaction(ds, null, false);
 return configuration.newExecutor(tx, ExecutorType.SIMPLE);
}

代码示例来源:origin: camunda/camunda-bpm-platform

Executor keyExecutor = configuration.newExecutor(executor.getTransaction(), ExecutorType.SIMPLE);
List<Object> values = keyExecutor.query(keyStatement, parameter, RowBounds.DEFAULT, Executor.NO_RESULT_HANDLER);
if (values.size() == 0) {

代码示例来源:origin: camunda/camunda-bpm-platform

private SqlSession openSessionFromDataSource(ExecutorType execType, TransactionIsolationLevel level, boolean autoCommit) {
 Transaction tx = null;
 try {
  final Environment environment = configuration.getEnvironment();
  final TransactionFactory transactionFactory = getTransactionFactoryFromEnvironment(environment);
  tx = transactionFactory.newTransaction(environment.getDataSource(), level, autoCommit);
  final Executor executor = configuration.newExecutor(tx, execType);
  return new DefaultSqlSession(configuration, executor, autoCommit);
 } catch (Exception e) {
  closeTransaction(tx); // may have fetched a connection so lets call close()
  throw ExceptionFactory.wrapException("Error opening session.  Cause: " + e, e);
 } finally {
  ErrorContext.instance().reset();
 }
}

代码示例来源:origin: org.mybatis/mybatis

Executor keyExecutor = configuration.newExecutor(executor.getTransaction(), ExecutorType.SIMPLE);
List<Object> values = keyExecutor.query(keyStatement, parameter, RowBounds.DEFAULT, Executor.NO_RESULT_HANDLER);
if (values.size() == 0) {

代码示例来源:origin: org.mybatis/mybatis

private SqlSession openSessionFromDataSource(ExecutorType execType, TransactionIsolationLevel level, boolean autoCommit) {
 Transaction tx = null;
 try {
  final Environment environment = configuration.getEnvironment();
  final TransactionFactory transactionFactory = getTransactionFactoryFromEnvironment(environment);
  tx = transactionFactory.newTransaction(environment.getDataSource(), level, autoCommit);
  final Executor executor = configuration.newExecutor(tx, execType);
  return new DefaultSqlSession(configuration, executor, autoCommit);
 } catch (Exception e) {
  closeTransaction(tx); // may have fetched a connection so lets call close()
  throw ExceptionFactory.wrapException("Error opening session.  Cause: " + e, e);
 } finally {
  ErrorContext.instance().reset();
 }
}

代码示例来源:origin: org.apache.ibatis/ibatis-core

public Executor newExecutor(Transaction transaction) {
 return newExecutor(transaction, defaultExecutorType);
}

代码示例来源:origin: org.apache.ibatis/ibatis-core

private Executor newExecutor() throws SQLException {
 Environment environment = configuration.getEnvironment();
 if (environment == null)
  throw new ExecutorException("ResultLoader could not load lazily.  Environment was not configured.");
 DataSource ds = environment.getDataSource();
 if (ds == null) throw new ExecutorException("ResultLoader could not load lazily.  DataSource was not configured.");
 Connection conn = ds.getConnection();
 conn = wrapConnection(conn);
 Transaction tx = new JdbcTransaction(conn, false);
 return configuration.newExecutor(tx, ExecutorType.SIMPLE);
}

代码示例来源:origin: org.apache.ibatis/ibatis-core

private SqlSession openSessionFromDataSource(ExecutorType execType, TransactionIsolationLevel level, boolean autoCommit) {
 try {
  final Environment environment = configuration.getEnvironment();
  final DataSource dataSource = getDataSourceFromEnvironment(environment);
  TransactionFactory transactionFactory = getTransactionFactoryFromEnvironment(environment);
  Connection connection = dataSource.getConnection();
  if (level != null) {
   connection.setTransactionIsolation(level.getLevel());
  }
  connection = wrapConnection(connection);
  Transaction tx = transactionFactory.newTransaction(connection, autoCommit);
  Executor executor = configuration.newExecutor(tx, execType);
  return new DefaultSqlSession(configuration, executor, autoCommit);
 } catch (SQLException e) {
  throw ExceptionFactory.wrapException("Error opening session.  Cause: " + e, e);
 } finally {
  ErrorContext.instance().reset();
 }
}

代码示例来源:origin: org.apache.ibatis/ibatis-core

private void processGeneratedKeys(Executor executor, MappedStatement ms, Statement stmt, Object parameter) {
 try {
  final Configuration configuration = ms.getConfiguration();
  if (parameter != null) {
   String keyStatementName = ms.getId() + SELECT_KEY_SUFFIX;
   if (configuration.hasStatement(keyStatementName)) {
    if (keyStatement != null) {
     String keyProperty = keyStatement.getKeyProperty();
     final MetaObject metaParam = configuration.newMetaObject(parameter);
     if (keyProperty != null && metaParam.hasSetter(keyProperty)) {
      // Do not close keyExecutor.
      // The transaction will be closed by parent executor.
      Executor keyExecutor = configuration.newExecutor(executor.getTransaction(), ExecutorType.SIMPLE);
      List values = keyExecutor.query(keyStatement, parameter, RowBounds.DEFAULT, Executor.NO_RESULT_HANDLER);
      if (values.size() > 1) {
       throw new ExecutorException("Select statement for SelectKeyGenerator returned more than one value.");
      }
      metaParam.setValue(keyProperty, values.get(0));
     }
    }
   }
  }
 } catch (Exception e) {
  throw new ExecutorException("Error selecting key or setting result to parameter object. Cause: " + e, e);
 }
}

代码示例来源:origin: org.hsweb/hsweb-web-dao-mybatis

private SqlSession openSessionFromDataSource(ExecutorType execType, TransactionIsolationLevel level, boolean autoCommit) {
  Transaction tx = null;
  try {
    final Environment environment = getConfiguration().getEnvironment();
    final TransactionFactory transactionFactory = getTransactionFactoryFromEnvironment(environment);
    DataSource ds = DataSourceHolder.getActiveSource();
    if (ds == null) ds = environment.getDataSource();
    tx = transactionFactory.newTransaction(ds, level, autoCommit);
    final Executor executor = getConfiguration().newExecutor(tx, execType);
    return new DefaultSqlSession(getConfiguration(), executor, autoCommit);
  } catch (Exception e) {
    closeTransaction(tx); // may have fetched a connection so lets call close()
    throw ExceptionFactory.wrapException("Error opening session.  Cause: " + e, e);
  } finally {
    ErrorContext.instance().reset();
  }
}

代码示例来源:origin: org.hswebframework.web/hsweb-commons-dao-mybatis

@SuppressWarnings("all")
private SqlSession openSessionFromDataSource(ExecutorType execType, TransactionIsolationLevel level, boolean autoCommit) {
  Transaction tx = null;
  try {
    final Environment environment = getConfiguration().getEnvironment();
    final TransactionFactory transactionFactory = getTransactionFactoryFromEnvironment(environment);
    DataSource ds = DataSourceHolder.currentDataSource().getNative();
    if (ds == null) {
      ds = environment.getDataSource();
    }
    tx = transactionFactory.newTransaction(ds, level, autoCommit);
    final Executor executor = getConfiguration().newExecutor(tx, execType);
    return new DefaultSqlSession(getConfiguration(), executor, autoCommit);
  } catch (Exception e) {
    closeTransaction(tx); // may have fetched a connection so lets call close()
    throw ExceptionFactory.wrapException("Error opening session.  Cause: " + e, e);
  } finally {
    ErrorContext.instance().reset();
  }
}

相关文章

微信公众号

最新文章

更多

Configuration类方法