* Pool.PingConnectionsOlderThan
* Pool.PingConnectionsNotUsedFor
* Pool.QuietMode
*/
private void initialize(Map props) {
...
if (!(props.containsKey(PROP_JDBC_DRIVER)
&& props.containsKey(PROP_JDBC_URL)
&& props.containsKey(PROP_JDBC_USERNAME)
&& props.containsKey(PROP_JDBC_PASSWORD))) {
throw new RuntimeException("SimpleDataSource: Some properties were not set.");
} else {
jdbcDriver = (String) props.get(PROP_JDBC_DRIVER);
jdbcUrl = (String) props.get(PROP_JDBC_URL);
jdbcUsername = (String) props.get(PROP_JDBC_USERNAME);
jdbcPassword = (String) props.get(PROP_JDBC_PASSWORD);
poolMaximumActiveConnections =
props.containsKey(PROP_POOL_MAX_ACTIVE_CONN)
Integer.parseInt((String) props.get(PROP_POOL_MAX_ACTIVE_CONN))
: 10;
poolMaximumIdleConnections =
props.containsKey(PROP_POOL_MAX_IDLE_CONN)
Integer.parseInt((String) props.get(PROP_POOL_MAX_IDLE_CONN))
: 5;
poolMaximumCheckoutTime =
props.containsKey(PROP_POOL_MAX_CHECKOUT_TIME)
Integer.parseInt((String) props.get(PROP_POOL_MAX_CHECKOUT_TIME))
: 20000;
poolTimeToWait =
props.containsKey(PROP_POOL_TIME_TO_WAIT)
Integer.parseInt((String) props.get(PROP_POOL_TIME_TO_WAIT))
: 20000;
poolPingEnabled =
props.containsKey(PROP_POOL_PING_ENABLED)
&& Boolean.valueOf((String) props.get(PROP_POOL_PING_ENABLED)).booleanValue();
prop_pool_ping_query = (String) props.get(PROP_POOL_PING_QUERY);
poolPingQuery =
props.containsKey(PROP_POOL_PING_QUERY)
prop_pool_ping_query
: "NO PING QUERY SET";
poolPingConnectionsOlderThan =
Integer.parseInt((String) props.get(PROP_POOL_PING_CONN_OLDER_THAN))
: 0;
poolPingConnectionsNotUsedFor =
props.containsKey(PROP_POOL_PING_CONN_NOT_USED_FOR)
Integer.parseInt((String) props.get(PROP_POOL_PING_CONN_NOT_USED_FOR))
: 0;
jdbcDefaultAutoCommit =
props.containsKey(PROP_JDBC_DEFAULT_AUTOCOMMIT)
&& Boolean.valueOf((String) props.get(PROP_JDBC_DEFAULT_AUTOCOMMIT)).booleanValue();
...
}
DBCP
相关类 com.ibatis.sqlmap.engine.datasource.DbcpDataSourceFactory
/**
* DataSourceFactory implementation for DBCP
*/
public class DbcpDataSourceFactory implements DataSourceFactory {
private DataSource dataSource;
public void initialize(Map map) {
DbcpConfiguration dbcp = new DbcpConfiguration(map);
dataSource = dbcp.getDataSource();
}
public DataSource getDataSource() {
return dataSource;
}
}
相关类 com.ibatis.common.jdbc.DbcpConfigurationDataSource
/* REQUIRED PROPERTIES
* -------------------
* JDBC.Driver
* JDBC.ConnectionURL
* JDBC.Username
* JDBC.Password
*
* Pool.ValidationQuery
* Pool.MaximumActiveConnections
* Pool.MaximumIdleConnections
* Pool.MaximumWait
*/
private BasicDataSource legacyDbcpConfiguration(Map map) {
BasicDataSource basicDataSource