org.apache.ibatis.mapping.Environment.getDataSource()方法的使用及代码示例

x33g5p2x  于2022-01-19 转载在 其他  
字(11.8k)|赞(0)|评价(0)|浏览(151)

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

Environment.getDataSource介绍

暂无

代码示例

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

@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: 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

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: org.apache.ibatis/ibatis-core

private DataSource getDataSourceFromEnvironment(Environment environment) {
 if (environment == null || environment.getDataSource() == null) {
  throw new SessionException("Configuration does not include an environment with a DataSource, so session cannot be created unless a connection is passed in.");
 }
 return environment.getDataSource();
}

代码示例来源: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: igool/spring-jta-mybatis

public CustomSqlSessionTemplate(SqlSessionFactory sqlSessionFactory, ExecutorType executorType) {
  this(sqlSessionFactory, executorType, new MyBatisExceptionTranslator(sqlSessionFactory.getConfiguration()
      .getEnvironment().getDataSource(), true));
}

代码示例来源: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: Alfresco/alfresco-repository

private void databaseIdProviderElement(XNode context) throws Exception {
  DatabaseIdProvider databaseIdProvider = null;
  if (context != null) {
    String type = context.getStringAttribute("type");
    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: deas/alfresco

private void databaseIdProviderElement(XNode context) throws Exception {
  DatabaseIdProvider databaseIdProvider = null;
  if (context != null) {
    String type = context.getStringAttribute("type");
    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

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

相关文章

微信公众号

最新文章

更多