Java Code Examples for org.apache.commons.dbcp.BasicDataSource#setValidationQueryTimeout()
The following examples show how to use
org.apache.commons.dbcp.BasicDataSource#setValidationQueryTimeout() .
You can vote up the ones you like or vote down the ones you don't like,
and go to the original project or source file by following the links above each example. You may check out the related API usage on the sidebar.
Example 1
Source File: GenericDatabaseInterface.java From wandora with GNU General Public License v3.0 | 5 votes |
protected void initConnectionPool(){ connectionPool=new BasicDataSource(); connectionPool.setDriverClassName(driver); connectionPool.setUrl(connectionString); connectionPool.setUsername(userName); connectionPool.setPassword(password); connectionPool.setMaxActive(-1); // no limit connectionPool.setValidationQuery("select 1"); connectionPool.setTestOnBorrow(true); connectionPool.setValidationQueryTimeout(1); fireDatabaseStarted(); }
Example 2
Source File: DBCPDataSourceCreater.java From tangyuan2 with GNU General Public License v3.0 | 4 votes |
private BasicDataSource createDataSource(Map<String, String> properties, String urlPattern) { BasicDataSource dsPool = new BasicDataSource(); dsPool.setDriverClassName(DSPropertyUtil.getPropertyStringValue("driver", properties, null, null, true)); dsPool.setUsername(DSPropertyUtil.getPropertyStringValue("username", properties, null, null, true)); dsPool.setPassword(DSPropertyUtil.getPropertyStringValue("password", properties, null, null, true)); String url = DSPropertyUtil.getPropertyStringValue("url", properties, null, null, true); if (null != urlPattern) { url = DSPropertyUtil.replace(url, "{}", urlPattern); } dsPool.setUrl(url); dsPool.setPoolPreparedStatements(DSPropertyUtil.getPropertyBooleanValue("poolingStatements", properties, null, true, true)); // 开启池的prepared // 池功能 dsPool.setRemoveAbandoned(DSPropertyUtil.getPropertyBooleanValue("removeAbandoned", properties, null, true, true)); dsPool.setRemoveAbandonedTimeout(DSPropertyUtil.getPropertyIntegerValue("removeAbandonedTimeout", properties, null, 1000, true)); dsPool.setLogAbandoned(DSPropertyUtil.getPropertyBooleanValue("logAbandoned", properties, null, true, true)); dsPool.setInitialSize(DSPropertyUtil.getPropertyIntegerValue("initialSize", properties, null, 2, true)); dsPool.setMaxActive(DSPropertyUtil.getPropertyIntegerValue("maxActive", properties, null, 8, true)); dsPool.setMaxIdle(DSPropertyUtil.getPropertyIntegerValue("maxIdle", properties, null, 8, true)); dsPool.setMinIdle(DSPropertyUtil.getPropertyIntegerValue("minIdle", properties, null, 0, true)); dsPool.setMaxWait(DSPropertyUtil.getPropertyIntegerValue("maxWait", properties, null, 10000, true)); dsPool.setTimeBetweenEvictionRunsMillis(DSPropertyUtil.getPropertyIntegerValue("timeBetweenEvictionRunsMillis", properties, null, -1, true)); dsPool.setTestOnBorrow(DSPropertyUtil.getPropertyBooleanValue("testOnBorrow", properties, null, false, true)); dsPool.setTestOnReturn(DSPropertyUtil.getPropertyBooleanValue("testOnReturn", properties, null, false, true)); dsPool.setTestWhileIdle(DSPropertyUtil.getPropertyBooleanValue("testWhileIdle", properties, null, false, true)); String validationQuery = DSPropertyUtil.getPropertyStringValue("validationQuery", properties, null, null, false); if (null != validationQuery) { dsPool.setValidationQuery(validationQuery); } int timeout = DSPropertyUtil.getPropertyIntegerValue("", properties, null, -1, false); if (timeout > -1) { dsPool.setValidationQueryTimeout(timeout); } dsPool.setNumTestsPerEvictionRun(DSPropertyUtil.getPropertyIntegerValue("numTestsPerEvictionRun", properties, null, 10, true)); dsPool.setMinEvictableIdleTimeMillis(DSPropertyUtil.getPropertyIntegerValue("minEvictableIdleTimeMillis", properties, null, 60000, true)); // mysql:select 1 // oracle:select 1 from dual // sqlserver:select 1 // jtds:select 1 boolean openTest = DSPropertyUtil.getPropertyBooleanValue("openTest", properties, null, false, false); if (openTest) { try { Connection conn = dsPool.getConnection(); conn.close(); log.info("test open database success."); } catch (Exception e) { throw new DataSourceException("test open database error: " + e.getMessage(), e); } } return dsPool; }
Example 3
Source File: DbcpDataSourcePool.java From Zebra with Apache License 2.0 | 4 votes |
@Override public DataSource build(DataSourceConfig config, boolean withDefaultValue) { BasicDataSource dbcpDataSource = new BasicDataSource(); dbcpDataSource.setUrl(config.getJdbcUrl()); dbcpDataSource.setUsername(config.getUsername()); dbcpDataSource.setPassword(config.getPassword()); dbcpDataSource.setDriverClassName(StringUtils.isNotBlank(config.getDriverClass()) ? config.getDriverClass() : JdbcDriverClassHelper.getDriverClassNameByJdbcUrl(config.getJdbcUrl())); if (withDefaultValue) { dbcpDataSource.setInitialSize(getIntProperty(config, "initialPoolSize", 5)); dbcpDataSource.setMaxActive(getIntProperty(config, "maxPoolSize", 30)); dbcpDataSource.setMinIdle(getIntProperty(config, "minPoolSize", 5)); dbcpDataSource.setMaxIdle(getIntProperty(config, "maxPoolSize", 20)); dbcpDataSource.setMaxWait(getIntProperty(config, "checkoutTimeout", 1000)); dbcpDataSource.setValidationQuery(getStringProperty(config, "preferredTestQuery", "SELECT 1")); dbcpDataSource.setMinEvictableIdleTimeMillis(getIntProperty(config, "minEvictableIdleTimeMillis", 1800000));// 30min dbcpDataSource.setTimeBetweenEvictionRunsMillis(getIntProperty(config, "timeBetweenEvictionRunsMillis", 30000)); // 30s dbcpDataSource.setRemoveAbandonedTimeout(getIntProperty(config, "removeAbandonedTimeout", 300)); // 30s dbcpDataSource.setNumTestsPerEvictionRun(getIntProperty(config, "numTestsPerEvictionRun", 6)); // 30s dbcpDataSource.setValidationQueryTimeout(getIntProperty(config, "validationQueryTimeout", 0)); if (StringUtils.isNotBlank(getStringProperty(config, "connectionInitSql", null))) { List<String> initSqls = new ArrayList<String>(); initSqls.add(getStringProperty(config, "connectionInitSql", null)); dbcpDataSource.setConnectionInitSqls(initSqls); } dbcpDataSource.setTestWhileIdle(true); dbcpDataSource.setTestOnBorrow(false); dbcpDataSource.setTestOnReturn(false); dbcpDataSource.setRemoveAbandoned(true); } else { try { PropertiesInit<BasicDataSource> propertiesInit = new PropertiesInit<BasicDataSource>(dbcpDataSource); propertiesInit.initPoolProperties(config); } catch (Exception e) { throw new ZebraConfigException(String.format("dbcp2 dataSource [%s] created error : ", config.getId()), e); } } this.pool = dbcpDataSource; LOGGER.info(String.format("New dataSource [%s] created.", config.getId())); return this.pool; }