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

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

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

Configuration.getEnvironment介绍

暂无

代码示例

代码示例来源:origin: pagehelper/Mybatis-PageHelper

DataSource dataSource = ms.getConfiguration().getEnvironment().getDataSource();
String url = getUrl(dataSource);
if (urlDialectMap.containsKey(url)) {

代码示例来源:origin: baomidou/mybatis-plus

private void databaseIdProviderElement(XNode context) throws Exception {
  DatabaseIdProvider databaseIdProvider = null;
  if (context != null) {
    String type = context.getStringAttribute("type");
    // awful patch to keep backward compatibility
    if ("VENDOR".equals(type)) {
      type = "DB_VENDOR";
    }
    Properties properties = context.getChildrenAsProperties();
    databaseIdProvider = (DatabaseIdProvider) resolveClass(type).newInstance();
    databaseIdProvider.setProperties(properties);
  }
  Environment environment = configuration.getEnvironment();
  if (environment != null && databaseIdProvider != null) {
    String databaseId = databaseIdProvider.getDatabaseId(environment.getDataSource());
    configuration.setDatabaseId(databaseId);
  }
}

代码示例来源: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: 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: org.mybatis/mybatis

private void databaseIdProviderElement(XNode context) throws Exception {
 DatabaseIdProvider databaseIdProvider = null;
 if (context != null) {
  String type = context.getStringAttribute("type");
  // awful patch to keep backward compatibility
  if ("VENDOR".equals(type)) {
    type = "DB_VENDOR";
  }
  Properties properties = context.getChildrenAsProperties();
  databaseIdProvider = (DatabaseIdProvider) resolveClass(type).newInstance();
  databaseIdProvider.setProperties(properties);
 }
 Environment environment = configuration.getEnvironment();
 if (environment != null && databaseIdProvider != null) {
  String databaseId = databaseIdProvider.getDatabaseId(environment.getDataSource());
  configuration.setDatabaseId(databaseId);
 }
}

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

private void databaseIdProviderElement(XNode context) throws Exception {
 DatabaseIdProvider databaseIdProvider = null;
 if (context != null) {
  String type = context.getStringAttribute("type");
  // awful patch to keep backward compatibility
  if ("VENDOR".equals(type)) {
    type = "DB_VENDOR";
  }
  Properties properties = context.getChildrenAsProperties();
  databaseIdProvider = (DatabaseIdProvider) resolveClass(type).newInstance();
  databaseIdProvider.setProperties(properties);
 }
 Environment environment = configuration.getEnvironment();
 if (environment != null && databaseIdProvider != null) {
  String databaseId = databaseIdProvider.getDatabaseId(environment.getDataSource());
  configuration.setDatabaseId(databaseId);
 }
}

代码示例来源: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: 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 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 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 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

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: camunda/camunda-bpm-platform

if (configuration.getEnvironment() != null) {
 cacheKey.update(configuration.getEnvironment().getId());

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

if (configuration.getEnvironment() != null) {
 cacheKey.update(configuration.getEnvironment().getId());

代码示例来源:origin: dk.netdesign/mybatis-extender-runtime

@Override
public void close() throws IOException {
  Environment current = mybatisConfiguration.getEnvironment();
  closeDataSource(current.getDataSource());
}

代码示例来源:origin: dk.netdesign/mybatis-extender-runtime

@Override
public void rebuildConnection() throws IOException {
  Environment current = mybatisConfiguration.getEnvironment();
  mybatisConfiguration.setEnvironment(buildEnvironment(service));
  closeDataSource(current.getDataSource());
}

代码示例来源:origin: makersoft/mybatis-shards

public ShardImpl(Set<ShardId> shardIds, SqlSessionFactory sqlSessionFactory){
  this.shardIds = shardIds;
  this.sqlSessionFactory = sqlSessionFactory;
  this.exceptionTranslator = new MyBatisExceptionTranslator(
      sqlSessionFactory.getConfiguration().getEnvironment().getDataSource(), true);
  this.sqlSessionProxy = (SqlSession) Proxy.newProxyInstance(
      SqlSessionFactory.class.getClassLoader(),
      new Class[] { SqlSession.class },
      new SqlSessionInterceptor());
}

代码示例来源:origin: snakerflow/snakerflow

public static Connection getConnection() throws SQLException {
  if(sqlSessionFactory == null) {
    log.debug("don't found available sqlSessionFactory");
    sqlSessionFactory = getSqlSessionFactory();
  }
  DataSource dataSource = sqlSessionFactory.
      getConfiguration().
      getEnvironment().
      getDataSource();
  return JdbcHelper.getConnection(dataSource);
}

代码示例来源:origin: snakerflow/snakerflow

public void initialize(Object accessObject) {
  if(accessObject == null) return;
  if(accessObject instanceof SqlSessionFactory) {
    this.sqlSessionFactory = (SqlSessionFactory)accessObject;
    setDataSource(this.sqlSessionFactory.getConfiguration().getEnvironment().getDataSource());
  }
}

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

public void testMyBatisConnectionPoolProperlyConfigured() {
 ProcessEngineConfigurationImpl config = (ProcessEngineConfigurationImpl) ProcessEngineConfiguration
  .createProcessEngineConfigurationFromResource("org/camunda/bpm/engine/test/api/cfg/connection-pool.camunda.cfg.xml");
 ProcessEngine engine = config.buildProcessEngine();
 // Expected values
 int maxActive = 25;
 int maxIdle = 10;
 int maxCheckoutTime = 30000;
 int maxWaitTime = 25000;
 Integer jdbcStatementTimeout = 300;
 assertEquals(maxActive, config.getJdbcMaxActiveConnections());
 assertEquals(maxIdle, config.getJdbcMaxIdleConnections());
 assertEquals(maxCheckoutTime, config.getJdbcMaxCheckoutTime());
 assertEquals(maxWaitTime, config.getJdbcMaxWaitTime());
 assertEquals(jdbcStatementTimeout, config.getJdbcStatementTimeout());
 // Verify that these properties are correctly set in the MyBatis datasource
 Configuration sessionFactoryConfiguration = config.getDbSqlSessionFactory().getSqlSessionFactory().getConfiguration();
 DataSource datasource = sessionFactoryConfiguration.getEnvironment().getDataSource();
 assertTrue(datasource instanceof PooledDataSource);
 PooledDataSource pooledDataSource = (PooledDataSource) datasource;
 assertEquals(maxActive, pooledDataSource.getPoolMaximumActiveConnections());
 assertEquals(maxIdle, pooledDataSource.getPoolMaximumIdleConnections());
 assertEquals(maxCheckoutTime, pooledDataSource.getPoolMaximumCheckoutTime());
 assertEquals(maxWaitTime, pooledDataSource.getPoolTimeToWait());
 assertEquals(jdbcStatementTimeout, sessionFactoryConfiguration.getDefaultStatementTimeout());
 engine.close();
}

相关文章

微信公众号

最新文章

更多

Configuration类方法