本文整理匯總了Java中org.apache.tomcat.jdbc.pool.PoolProperties.setLogAbandoned方法的典型用法代碼示例。如果您正苦於以下問題:Java PoolProperties.setLogAbandoned方法的具體用法?Java PoolProperties.setLogAbandoned怎麽用?Java PoolProperties.setLogAbandoned使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在類org.apache.tomcat.jdbc.pool.PoolProperties
的用法示例。
在下文中一共展示了PoolProperties.setLogAbandoned方法的15個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的Java代碼示例。
示例1: initDataSource
import org.apache.tomcat.jdbc.pool.PoolProperties; //導入方法依賴的package包/類
private void initDataSource(String dataSourceFile) {
Properties dataSourceProps = getPropertiesFromClasspath(dataSourceFile);
PoolProperties p = new PoolProperties();
p.setUrl(dataSourceProps.getProperty("url"));
p.setDriverClassName(dataSourceProps.getProperty("driverClassName"));
p.setUsername(dataSourceProps.getProperty("username"));
p.setPassword(dataSourceProps.getProperty("password"));
p.setMaxIdle(Integer.valueOf(dataSourceProps.getProperty("maxIdle")));
p.setMinIdle(Integer.valueOf(dataSourceProps.getProperty("minIdle")));
p.setInitialSize(Integer.valueOf(dataSourceProps.getProperty("initialSize")));
p.setMaxWait(Integer.valueOf(dataSourceProps.getProperty("maxWait")));
p.setMaxActive(Integer.valueOf(dataSourceProps.getProperty("maxActive")));
p.setTestOnBorrow(Boolean.valueOf(dataSourceProps.getProperty("testOnBorrow")));
p.setTestOnReturn(Boolean.valueOf(dataSourceProps.getProperty("testOnReturn")));
p.setTestWhileIdle(Boolean.valueOf(dataSourceProps.getProperty("testWhileIdle")));
p.setValidationQuery(dataSourceProps.getProperty("validationQuery"));
p.setValidationQueryTimeout(Integer.valueOf(dataSourceProps.getProperty("validationQueryTimeout")));
p.setTimeBetweenEvictionRunsMillis(Integer.valueOf(dataSourceProps.getProperty("timeBetweenEvictionRunsMillis")));
p.setMinEvictableIdleTimeMillis(Integer.valueOf(dataSourceProps.getProperty("minEvictableIdleTimeMillis")));
p.setRemoveAbandoned(Boolean.valueOf(dataSourceProps.getProperty("removeAbandoned")));
p.setRemoveAbandonedTimeout(Integer.valueOf(dataSourceProps.getProperty("removeAbandonedTimeout")));
p.setValidationInterval(Integer.valueOf(dataSourceProps.getProperty("validationInterval")));
p.setLogAbandoned(Boolean.valueOf(dataSourceProps.getProperty("logAbandoned")));
p.setFairQueue(Boolean.valueOf(dataSourceProps.getProperty("fairQueue")));
dataSource.setPoolProperties(p);
}
示例2: getPoolProperties
import org.apache.tomcat.jdbc.pool.PoolProperties; //導入方法依賴的package包/類
public PoolProperties getPoolProperties() {
PoolProperties poolProperties = new PoolProperties();
poolProperties.setUrl("jdbc:postgresql://localhost:5432/chronica");
poolProperties.setDriverClassName("org.postgresql.Driver");
poolProperties.setUsername("chronica");
poolProperties.setPassword("chronica");
poolProperties.setJmxEnabled(true);
poolProperties.setTestWhileIdle(false);
poolProperties.setTestOnBorrow(true);
poolProperties.setValidationQuery("SELECT 1");
poolProperties.setTestOnReturn(false);
poolProperties.setValidationInterval(30000);
poolProperties.setTimeBetweenEvictionRunsMillis(30000);
poolProperties.setMaxActive(100);
poolProperties.setInitialSize(10);
poolProperties.setMaxWait(10000);
poolProperties.setRemoveAbandonedTimeout(60);
poolProperties.setMinEvictableIdleTimeMillis(30000);
poolProperties.setMinIdle(10);
poolProperties.setLogAbandoned(true);
poolProperties.setRemoveAbandoned(true);
poolProperties.setJdbcInterceptors("org.apache.tomcat.jdbc.pool.interceptor.ConnectionState;"
+ "org.apache.tomcat.jdbc.pool.interceptor.StatementFinalizer");
return poolProperties;
}
示例3: createPool
import org.apache.tomcat.jdbc.pool.PoolProperties; //導入方法依賴的package包/類
public static void createPool() throws Exception {
// Modify this code in order to extract a Connection from your
// connection pooling system:
// Driver parameters to use:
String driverClassName = "org.postgresql.Driver";
String url = "jdbc:postgresql://localhost:5432/kawansoft_example";
String username = "user1";
String password = "password1";
// Creating the DataSource bean and populating the values:
// Mandatory values to set
PoolProperties p = new PoolProperties();
p.setDriverClassName(driverClassName);
p.setUrl(url);
p.setUsername(username);
p.setPassword(password);
// Other possible values to set
p.setTestOnBorrow(true);
p.setValidationQuery("SELECT 1");
p.setTestOnReturn(false);
p.setValidationInterval(30000);
p.setTimeBetweenEvictionRunsMillis(30000);
p.setMaxActive(2);
p.setInitialSize(2);
p.setMaxWait(10000);
p.setRemoveAbandonedTimeout(60);
p.setMinEvictableIdleTimeMillis(30000);
p.setMinIdle(2);
p.setMaxIdle(2);
p.setLogAbandoned(true);
p.setRemoveAbandoned(true);
p.setJdbcInterceptors("ConnectionState;StatementFinalizer");
dataSource = new DataSource();
dataSource.setPoolProperties(p);
}
示例4: getDatabasePoolConfig
import org.apache.tomcat.jdbc.pool.PoolProperties; //導入方法依賴的package包/類
public DatabasePoolConfig getDatabasePoolConfig(String name) {
DataSourceConfigure configure = DataSourceConfigureLocator.getInstance().getDataSourceConfigure(name);
PoolProperties poolProperties = new PoolProperties();
poolProperties.setTestWhileIdle(configure.getBooleanProperty(TESTWHILEIDLE, DEFAULT_TESTWHILEIDLE));
poolProperties.setTestOnBorrow(configure.getBooleanProperty(TESTONBORROW, DEFAULT_TESTONBORROW));
poolProperties.setTestOnReturn(configure.getBooleanProperty(TESTONRETURN, DEFAULT_TESTONRETURN));
poolProperties.setValidationQuery(configure.getProperty(VALIDATIONQUERY, DEFAULT_VALIDATIONQUERY));
poolProperties.setValidationQueryTimeout(
configure.getIntProperty(VALIDATIONQUERYTIMEOUT, DEFAULT_VALIDATIONQUERYTIMEOUT));
poolProperties.setValidationInterval(configure.getLongProperty(VALIDATIONINTERVAL, DEFAULT_VALIDATIONINTERVAL));
poolProperties.setTimeBetweenEvictionRunsMillis(
configure.getIntProperty(TIMEBETWEENEVICTIONRUNSMILLIS, DEFAULT_TIMEBETWEENEVICTIONRUNSMILLIS));
poolProperties.setMinEvictableIdleTimeMillis(DEFAULT_MINEVICTABLEIDLETIMEMILLIS);
poolProperties.setMaxAge(configure.getIntProperty(MAX_AGE, DEFAULT_MAXAGE));
poolProperties.setMaxActive(configure.getIntProperty(MAXACTIVE, DEFAULT_MAXACTIVE));
poolProperties.setMinIdle(configure.getIntProperty(MINIDLE, DEFAULT_MINIDLE));
poolProperties.setMaxWait(configure.getIntProperty(MAXWAIT, DEFAULT_MAXWAIT));
poolProperties.setInitialSize(configure.getIntProperty(INITIALSIZE, DEFAULT_INITIALSIZE));
poolProperties.setRemoveAbandonedTimeout(
configure.getIntProperty(REMOVEABANDONEDTIMEOUT, DEFAULT_REMOVEABANDONEDTIMEOUT));
poolProperties.setRemoveAbandoned(configure.getBooleanProperty(REMOVEABANDONED, DEFAULT_REMOVEABANDONED));
poolProperties.setLogAbandoned(configure.getBooleanProperty(LOGABANDONED, DEFAULT_LOGABANDONED));
poolProperties
.setConnectionProperties(configure.getProperty(CONNECTIONPROPERTIES, DEFAULT_CONNECTIONPROPERTIES));
poolProperties.setValidatorClassName(configure.getProperty(VALIDATORCLASSNAME, DEFAULT_VALIDATORCLASSNAME));
poolProperties.setJmxEnabled(DEFAULT_JMXENABLED);
poolProperties.setJdbcInterceptors(DEFAULT_JDBCINTERCEPTORS);
return new DatabasePoolConfig(poolProperties);
}
示例5: createDataSource
import org.apache.tomcat.jdbc.pool.PoolProperties; //導入方法依賴的package包/類
private static DataSource createDataSource(String url, String userName, String password, String driverClass)
throws Exception {
PoolProperties p = new PoolProperties();
p.setUrl(url);
p.setUsername(userName);
p.setPassword(password);
p.setDriverClassName(driverClass);
p.setJmxEnabled(false);
p.setTestWhileIdle(false);
p.setTestOnBorrow(true);
p.setTestOnReturn(false);
p.setValidationQuery("SELECT 1");
p.setValidationQueryTimeout(5);
p.setValidationInterval(30000L);
p.setTimeBetweenEvictionRunsMillis(5000);
p.setMaxActive(100);
p.setMinIdle(0);
p.setMaxWait(10000);
p.setMaxAge(0L);
p.setInitialSize(1);
p.setRemoveAbandonedTimeout(60);
p.setRemoveAbandoned(true);
p.setLogAbandoned(true);
p.setMinEvictableIdleTimeMillis(30000);
p.setJdbcInterceptors("org.apache.tomcat.jdbc.pool.interceptor.ConnectionState;"
+ "org.apache.tomcat.jdbc.pool.interceptor.StatementFinalizer");
org.apache.tomcat.jdbc.pool.DataSource ds = new org.apache.tomcat.jdbc.pool.DataSource(p);
ds.createPool();
return ds;
}
示例6: setUp
import org.apache.tomcat.jdbc.pool.PoolProperties; //導入方法依賴的package包/類
@Before
public void setUp() {
PoolProperties p = new PoolProperties();
p.setUrl("jdbc:mysql://localhost:3306/mysql");
p.setDriverClassName("com.mysql.jdbc.Driver");
p.setUsername("root");
p.setPassword("");
p.setJmxEnabled(true);
p.setTestWhileIdle(false);
p.setTestOnBorrow(true);
p.setValidationQuery("SELECT 1");
p.setTestOnReturn(false);
p.setValidationInterval(30000);
p.setTimeBetweenEvictionRunsMillis(30000);
p.setMaxActive(100);
p.setInitialSize(10);
p.setMaxWait(10000);
p.setRemoveAbandonedTimeout(60);
p.setMinEvictableIdleTimeMillis(30000);
p.setMinIdle(10);
p.setLogAbandoned(true);
p.setRemoveAbandoned(true);
p.setFairQueue(true);
p.setJdbcInterceptors(
"org.apache.tomcat.jdbc.pool.interceptor.ConnectionState;" +
"org.apache.tomcat.jdbc.pool.interceptor.StatementFinalizer");
dataSource = new DataSource();
dataSource.setPoolProperties(p);
}
示例7: setUp
import org.apache.tomcat.jdbc.pool.PoolProperties; //導入方法依賴的package包/類
@Before
public void setUp() {
PoolProperties p = new PoolProperties();
p.setUrl("jdbc:mysql://localhost:3306/admin");
p.setDriverClassName("com.mysql.jdbc.Driver");
p.setUsername("root");
p.setPassword("");
p.setJmxEnabled(true);
p.setTestWhileIdle(false);
p.setTestOnBorrow(true);
p.setValidationQuery("SELECT 1");
p.setTestOnReturn(false);
p.setValidationInterval(30000);
p.setTimeBetweenEvictionRunsMillis(30000);
p.setMaxActive(100);
p.setInitialSize(10);
p.setMaxWait(10000);
p.setRemoveAbandonedTimeout(60);
p.setMinEvictableIdleTimeMillis(30000);
p.setMinIdle(10);
p.setLogAbandoned(true);
p.setRemoveAbandoned(true);
p.setFairQueue(true);
p.setJdbcInterceptors(
"org.apache.tomcat.jdbc.pool.interceptor.ConnectionState;" +
"org.apache.tomcat.jdbc.pool.interceptor.StatementFinalizer");
dataSource = new DataSource();
dataSource.setPoolProperties(p);
}
示例8: setUp
import org.apache.tomcat.jdbc.pool.PoolProperties; //導入方法依賴的package包/類
@Before
public void setUp() {
PoolProperties p = new PoolProperties();
p.setUrl("jdbc:mysql://127.0.0.1:3308/admin");
p.setDriverClassName("com.mysql.jdbc.Driver");
p.setUsername("root");
p.setPassword("");
p.setJmxEnabled(true);
p.setTestWhileIdle(false);
p.setTestOnBorrow(true);
p.setValidationQuery("SELECT 1");
p.setTestOnReturn(false);
p.setValidationInterval(30000);
p.setTimeBetweenEvictionRunsMillis(30000);
p.setMaxActive(100);
p.setInitialSize(10);
p.setMaxWait(10000);
p.setRemoveAbandonedTimeout(60);
p.setMinEvictableIdleTimeMillis(30000);
p.setMinIdle(10);
p.setLogAbandoned(true);
p.setRemoveAbandoned(true);
p.setFairQueue(true);
p.setJdbcInterceptors(
"org.apache.tomcat.jdbc.pool.interceptor.ConnectionState;" +
"org.apache.tomcat.jdbc.pool.interceptor.StatementFinalizer");
dataSource = new DataSource();
dataSource.setPoolProperties(p);
}
示例9: DBConnection
import org.apache.tomcat.jdbc.pool.PoolProperties; //導入方法依賴的package包/類
public DBConnection(JdbcConfiguration configuration) {
PoolProperties p = new PoolProperties();
p.setDriverClassName(configuration.getDriverClass());
p.setUrl(configuration.getUrl());
p.setUsername(configuration.getUsername());
p.setPassword(configuration.getPassword());
p.setJmxEnabled(true);
p.setTestWhileIdle(false);
p.setTestOnBorrow(true);
p.setValidationQuery("SELECT 1");
p.setTestOnReturn(false);
p.setValidationInterval(30000);
p.setTimeBetweenEvictionRunsMillis(30000);
p.setMaxActive(100);
p.setInitialSize(10);
p.setMaxWait(10000);
p.setRemoveAbandonedTimeout(60);
p.setMinEvictableIdleTimeMillis(30000);
p.setMinIdle(10);
p.setLogAbandoned(true);
p.setRemoveAbandoned(true);
p.setJdbcInterceptors("org.apache.tomcat.jdbc.pool.interceptor.ConnectionState;"
+ "org.apache.tomcat.jdbc.pool.interceptor.StatementFinalizer");
this.dataSource = new DataSource();
this.dataSource.setPoolProperties(p);
}
示例10: getInstance
import org.apache.tomcat.jdbc.pool.PoolProperties; //導入方法依賴的package包/類
/**
* Obtain instance of the SQL Service
*
* @return instance of SQLService
* @throws Exception exception
*/
public static SQLService getInstance() throws Exception {
if (_instance == null) {
_instance = new SQLService();
_instance.startServer();
// default pool size is 20
// can be overriden by env variable
int dbPool = 20;
if (Utils.getEnvironmentOptionValue(Constants.SYS_DATABASE_POOL_SIZE) != null) {
dbPool = Integer.valueOf(Utils.getEnvironmentOptionValue(Constants.SYS_DATABASE_POOL_SIZE));
}
// initialize connection pool
PoolProperties p = new PoolProperties();
String connectString = "jdbc:h2:tcp://" + _instance.databaseHost + ":" + String.valueOf(_instance.port) + "/" +
_instance.databaseName + "/proxydb;MULTI_THREADED=true;AUTO_RECONNECT=TRUE;AUTOCOMMIT=ON";
p.setUrl(connectString);
p.setDriverClassName("org.h2.Driver");
p.setUsername("sa");
p.setJmxEnabled(true);
p.setTestWhileIdle(false);
p.setTestOnBorrow(true);
p.setValidationQuery("SELECT 1");
p.setTestOnReturn(false);
p.setValidationInterval(5000);
p.setTimeBetweenEvictionRunsMillis(30000);
p.setMaxActive(dbPool);
p.setInitialSize(5);
p.setMaxWait(30000);
p.setRemoveAbandonedTimeout(60);
p.setMinEvictableIdleTimeMillis(30000);
p.setMinIdle(10);
p.setLogAbandoned(true);
p.setRemoveAbandoned(true);
_instance.datasource = new DataSource();
_instance.datasource.setPoolProperties(p);
}
return _instance;
}
示例11: initial
import org.apache.tomcat.jdbc.pool.PoolProperties; //導入方法依賴的package包/類
@Test
public void initial() throws Exception {
PoolProperties p = new PoolProperties();
p.setUrl("jdbc:h2:mem");
p.setDriverClassName("org.h2.Driver");
p.setUsername("sa");
p.setPassword("sa");
p.setJmxEnabled(true);
p.setTestWhileIdle(false);
p.setTestOnBorrow(true);
p.setValidationQuery("SELECT 1");
p.setTestOnReturn(false);
p.setValidationInterval(30000);
p.setTimeBetweenEvictionRunsMillis(30000);
p.setMaxActive(100);
p.setInitialSize(10);
p.setMaxWait(10000);
p.setRemoveAbandonedTimeout(60);
p.setMinEvictableIdleTimeMillis(30000);
p.setMinIdle(10);
p.setLogAbandoned(true);
p.setRemoveAbandoned(true);
p.setJdbcInterceptors("org.apache.tomcat.jdbc.pool.interceptor.ConnectionState;"
+ "org.apache.tomcat.jdbc.pool.interceptor.StatementFinalizer");
DataSource dataSource = new DataSource();
dataSource.setPoolProperties(p);
try (Connection connection = dataSource.getConnection();
Statement statement = connection.createStatement();
ResultSet resultSet = statement.executeQuery("select 1")) {
while (resultSet.next()) {
logger.info("{}", resultSet.getObject(1));
}
}
}
示例12: addDataSource
import org.apache.tomcat.jdbc.pool.PoolProperties; //導入方法依賴的package包/類
public static void addDataSource(String key, Properties props) throws SQLException{
String cs = props.getProperty("jdbcconnectstring");
Matcher o = oraclePattern.matcher(cs);
Matcher m = mysqlPattern.matcher(cs);
int currType;
PoolProperties p = new PoolProperties();
p.setUrl(props.getProperty("jdbcconnectstring"));
if (o.matches()) {
p.setDriverClassName("oracle.jdbc.OracleDriver");
currType=ORACLE;
} else if (m.matches()) {
p.setDriverClassName("com.mysql.jdbc.Driver");
currType=MYSQL;
} else {
throw new SQLException("Unknown database type in " + cs);
}
p.setUsername(props.getProperty("user"));
p.setPassword(props.getProperty("passwd"));
//p.setJmxEnabled(true);
p.setTestWhileIdle(false);
p.setTestOnBorrow(true);
p.setValidationQuery("SELECT 1");
p.setValidationInterval(30000);
p.setTestOnReturn(false);
p.setTimeBetweenEvictionRunsMillis(30000);
p.setMaxActive(100);
p.setInitialSize(5);
p.setMaxWait(1000);
p.setRemoveAbandonedTimeout(30000);
p.setMinEvictableIdleTimeMillis(30000);
p.setMinIdle(5);
p.setLogAbandoned(true);
p.setRemoveAbandoned(true);
p.setJdbcInterceptors(
"org.apache.tomcat.jdbc.pool.interceptor.ConnectionState;"+
"org.apache.tomcat.jdbc.pool.interceptor.StatementFinalizer");
DataSource datasource = new DataSource();
datasource.setPoolProperties(p);
sourceType.put(datasource, currType);
sources.put(key, datasource);
}
示例13: newDataSource
import org.apache.tomcat.jdbc.pool.PoolProperties; //導入方法依賴的package包/類
DataSource newDataSource(HashMapKey hashMapKey, String json) {
TomcatPoolProperties tomcatPoolProperties = new Gson().fromJson(json, TomcatPoolProperties.class);
PoolProperties poolProperties = new PoolProperties();
String username = tomcatPoolProperties.getUsername();
String password = tomcatPoolProperties.getPassword();
String url = tomcatPoolProperties.getUrl();
if (url == null || password == null || username == null) {
throw new MalformedJsonException("The url or username or password is null. Provide " + "proper details.");
}
poolProperties.setUsername(username);
poolProperties.setPassword(password);
poolProperties.setUrl(tomcatPoolProperties.getUrl());
poolProperties.setTestWhileIdle(tomcatPoolProperties.isTestWhileIdle());
poolProperties.setTestOnBorrow(tomcatPoolProperties.isTestOnBorrow());
poolProperties.setTestOnReturn(tomcatPoolProperties.isTestOnReturn());
poolProperties.setValidationQuery(tomcatPoolProperties.getValidationQuery());
poolProperties.setValidationInterval(tomcatPoolProperties.getValidationInterval());
poolProperties.setTimeBetweenEvictionRunsMillis(tomcatPoolProperties.getTimeBetweenEvictionRunsMillis());
poolProperties.setMaxActive(tomcatPoolProperties.getMaxActive());
poolProperties.setMinIdle(tomcatPoolProperties.getMinIdle());
poolProperties.setMaxWait(tomcatPoolProperties.getMaxWait());
poolProperties.setInitialSize(tomcatPoolProperties.getInitialSize());
poolProperties.setRemoveAbandonedTimeout(tomcatPoolProperties.getRemoveAbandonedTimeout());
poolProperties.setRemoveAbandoned(tomcatPoolProperties.isRemoveAbandoned());
poolProperties.setLogAbandoned(tomcatPoolProperties.isLogAbandoned());
poolProperties.setMinEvictableIdleTimeMillis(tomcatPoolProperties.getMinEvictableIdleTimeMillis());
poolProperties.setJmxEnabled(tomcatPoolProperties.isJmxEnabled());
poolProperties.setJdbcInterceptors(tomcatPoolProperties.getJdbcInterceptors());
poolProperties.setDriverClassName(tomcatPoolProperties.getDriverClassName());
boolean forceAlternateUsername = tomcatPoolProperties.isForceAlternateUsername();
if (forceAlternateUsername) {
if (logger.isDebugEnabled()) {
logger.debug("The property forceAlternateUsername is true. Setting it to false(default) improves the " +
"" + "performance while retrieving connections from the pool.");
}
}
javax.sql.DataSource dataSource = new org.apache.tomcat.jdbc.pool.DataSource(poolProperties);
if (logger.isInfoEnabled()) {
logger.info("Successfully prepared the Data Source " + dataSource.getClass() + ". " +
"Registering key for the DataSource provider " + hashMapKey.getDataSourceProvider());
}
((org.apache.tomcat.jdbc.pool.DataSource) dataSource).setAlternateUsernameAllowed(forceAlternateUsername);
if (logger.isInfoEnabled()) {
logger.info("Registering DataSource pool of type TomcatJdbc");
}
this.dataSourcePool.register(hashMapKey, dataSource, json);
return dataSource;
}
示例14: convert
import org.apache.tomcat.jdbc.pool.PoolProperties; //導入方法依賴的package包/類
public PoolProperties convert(DataSourceConfigure config) {
PoolProperties properties = new PoolProperties();
/**
* It is assumed that user name/password/url/driver class name are provided in pool config If not, it should be
* provided by the config provider
*/
properties.setUrl(config.getConnectionUrl());
properties.setUsername(config.getUserName());
properties.setPassword(config.getPassword());
properties.setDriverClassName(config.getDriverClass());
properties.setTestWhileIdle(config.getBooleanProperty(TESTWHILEIDLE, DEFAULT_TESTWHILEIDLE));
properties.setTestOnBorrow(config.getBooleanProperty(TESTONBORROW, DEFAULT_TESTONBORROW));
properties.setTestOnReturn(config.getBooleanProperty(TESTONRETURN, DEFAULT_TESTONRETURN));
properties.setValidationQuery(config.getProperty(VALIDATIONQUERY, DEFAULT_VALIDATIONQUERY));
properties.setValidationQueryTimeout(
config.getIntProperty(VALIDATIONQUERYTIMEOUT, DEFAULT_VALIDATIONQUERYTIMEOUT));
properties.setValidationInterval(config.getLongProperty(VALIDATIONINTERVAL, DEFAULT_VALIDATIONINTERVAL));
properties.setTimeBetweenEvictionRunsMillis(
config.getIntProperty(TIMEBETWEENEVICTIONRUNSMILLIS, DEFAULT_TIMEBETWEENEVICTIONRUNSMILLIS));
properties.setMinEvictableIdleTimeMillis(
config.getIntProperty(MINEVICTABLEIDLETIMEMILLIS, DEFAULT_MINEVICTABLEIDLETIMEMILLIS));
properties.setMaxAge(config.getIntProperty(MAX_AGE, DEFAULT_MAXAGE));
properties.setMaxActive(config.getIntProperty(MAXACTIVE, DEFAULT_MAXACTIVE));
properties.setMinIdle(config.getIntProperty(MINIDLE, DEFAULT_MINIDLE));
properties.setMaxWait(config.getIntProperty(MAXWAIT, DEFAULT_MAXWAIT));
properties.setInitialSize(config.getIntProperty(INITIALSIZE, DEFAULT_INITIALSIZE));
properties.setRemoveAbandonedTimeout(
config.getIntProperty(REMOVEABANDONEDTIMEOUT, DEFAULT_REMOVEABANDONEDTIMEOUT));
properties.setRemoveAbandoned(config.getBooleanProperty(REMOVEABANDONED, DEFAULT_REMOVEABANDONED));
properties.setLogAbandoned(config.getBooleanProperty(LOGABANDONED, DEFAULT_LOGABANDONED));
properties.setConnectionProperties(config.getProperty(CONNECTIONPROPERTIES, DEFAULT_CONNECTIONPROPERTIES));
properties.setValidatorClassName(config.getProperty(VALIDATORCLASSNAME, DEFAULT_VALIDATORCLASSNAME));
String initSQL = config.getProperty(INIT_SQL);
if (initSQL != null && !initSQL.isEmpty())
properties.setInitSQL(initSQL);
String initSQL2 = config.getProperty(INIT_SQL2);
if (initSQL2 != null && !initSQL2.isEmpty())
properties.setInitSQL(initSQL2);
// This are current hard coded as default value
properties.setJmxEnabled(DEFAULT_JMXENABLED);
properties.setJdbcInterceptors(DEFAULT_JDBCINTERCEPTORS);
return properties;
}
示例15: start
import org.apache.tomcat.jdbc.pool.PoolProperties; //導入方法依賴的package包/類
@Override
public void start() {
PoolProperties p = new PoolProperties();
p.setUrl(this.conURL);
p.setDriverClassName(this.driverName);
p.setUsername(this.username);
p.setPassword(this.password);
p.setJmxEnabled(false);
if (this.testSql != null && this.testSql.trim().length() > 0) {
p.setValidationQuery(this.testSql);
p.setTestWhileIdle(true);
p.setTimeBetweenEvictionRunsMillis(15 * 1000);
boolean tbf = AppProperties.getAsBoolean(
"TomcatJdbcPool_TestOnBorrow", false);
p.setTestOnBorrow(tbf);// 獲取之前是否校驗
p.setTestOnReturn(false);
p.setValidationInterval(30000);
}
p.setMaxActive(this.max);
p.setMaxIdle(this.max);
p.setInitialSize(this.min);
p.setMinIdle(min);
int maxwaitfornoconn = AppProperties.getAsInt("TomcatJdbcPool_MaxWait",
30 * 1000);
p.setMaxWait(maxwaitfornoconn);
boolean removeAbandonedFlag = AppProperties.getAsBoolean(
"TomcatJdbcPool_RemoveAbandoned", false);
if (removeAbandonedFlag) {
p.setLogAbandoned(true);
p.setRemoveAbandoned(true);
p.setRemoveAbandonedTimeout(AppProperties.getAsInt(
"TomcatJdbcPool_RemoveAbandonedTimeout", 60));
}
// p.setMinEvictableIdleTimeMillis(30000);
p.setJdbcInterceptors("org.apache.tomcat.jdbc.pool.interceptor.ConnectionState;"
+ "org.apache.tomcat.jdbc.pool.interceptor.StatementFinalizer");
datasource = new DataSource();
datasource.setPoolProperties(p);
try {
datasource.createPool();
} catch (SQLException e) {
datasource.close();
throw new AppRuntimeException("start tomcat pool err", e);
}
}