Class PooledDataSource

    • Field Detail

      • poolMaximumActiveConnections

        protected int poolMaximumActiveConnections
      • poolMaximumIdleConnections

        protected int poolMaximumIdleConnections
      • poolMaximumCheckoutTime

        protected int poolMaximumCheckoutTime
      • poolTimeToWait

        protected int poolTimeToWait
      • poolMaximumLocalBadConnectionTolerance

        protected int poolMaximumLocalBadConnectionTolerance
      • poolPingQuery

        protected String poolPingQuery
      • poolPingEnabled

        protected boolean poolPingEnabled
      • poolPingConnectionsNotUsedFor

        protected int poolPingConnectionsNotUsedFor
    • Method Detail

      • setDriver

        public void setDriver​(String driver)
      • setUrl

        public void setUrl​(String url)
      • setUsername

        public void setUsername​(String username)
      • setPassword

        public void setPassword​(String password)
      • setDefaultAutoCommit

        public void setDefaultAutoCommit​(boolean defaultAutoCommit)
      • setDefaultTransactionIsolationLevel

        public void setDefaultTransactionIsolationLevel​(Integer defaultTransactionIsolationLevel)
      • setDriverProperties

        public void setDriverProperties​(Properties driverProps)
      • setDefaultNetworkTimeout

        public void setDefaultNetworkTimeout​(Integer milliseconds)
        Sets the default network timeout value to wait for the database operation to complete. See Connection.setNetworkTimeout(java.util.concurrent.Executor, int)
        Parameters:
        milliseconds - The time in milliseconds to wait for the database operation to complete.
        Since:
        3.5.2
      • setPoolMaximumActiveConnections

        public void setPoolMaximumActiveConnections​(int poolMaximumActiveConnections)
        The maximum number of active connections.
        Parameters:
        poolMaximumActiveConnections - The maximum number of active connections
      • setPoolMaximumIdleConnections

        public void setPoolMaximumIdleConnections​(int poolMaximumIdleConnections)
        The maximum number of idle connections.
        Parameters:
        poolMaximumIdleConnections - The maximum number of idle connections
      • setPoolMaximumLocalBadConnectionTolerance

        public void setPoolMaximumLocalBadConnectionTolerance​(int poolMaximumLocalBadConnectionTolerance)
        The maximum number of tolerance for bad connection happens in one thread which are applying for new PooledConnection.
        Parameters:
        poolMaximumLocalBadConnectionTolerance - max tolerance for bad connection happens in one thread
        Since:
        3.4.5
      • setPoolMaximumCheckoutTime

        public void setPoolMaximumCheckoutTime​(int poolMaximumCheckoutTime)
        The maximum time a connection can be used before it *may* be given away again.
        Parameters:
        poolMaximumCheckoutTime - The maximum time
      • setPoolTimeToWait

        public void setPoolTimeToWait​(int poolTimeToWait)
        The time to wait before retrying to get a connection.
        Parameters:
        poolTimeToWait - The time to wait
      • setPoolPingQuery

        public void setPoolPingQuery​(String poolPingQuery)
        The query to be used to check a connection.
        Parameters:
        poolPingQuery - The query
      • setPoolPingEnabled

        public void setPoolPingEnabled​(boolean poolPingEnabled)
        Determines if the ping query should be used.
        Parameters:
        poolPingEnabled - True if we need to check a connection before using it
      • setPoolPingConnectionsNotUsedFor

        public void setPoolPingConnectionsNotUsedFor​(int milliseconds)
        If a connection has not been used in this many milliseconds, ping the database to make sure the connection is still good.
        Parameters:
        milliseconds - the number of milliseconds of inactivity that will trigger a ping
      • getDriver

        public String getDriver()
      • getUrl

        public String getUrl()
      • getUsername

        public String getUsername()
      • getPassword

        public String getPassword()
      • isAutoCommit

        public boolean isAutoCommit()
      • getDefaultTransactionIsolationLevel

        public Integer getDefaultTransactionIsolationLevel()
      • getDriverProperties

        public Properties getDriverProperties()
      • getDefaultNetworkTimeout

        public Integer getDefaultNetworkTimeout()
        Gets the default network timeout.
        Returns:
        the default network timeout
        Since:
        3.5.2
      • getPoolMaximumActiveConnections

        public int getPoolMaximumActiveConnections()
      • getPoolMaximumIdleConnections

        public int getPoolMaximumIdleConnections()
      • getPoolMaximumLocalBadConnectionTolerance

        public int getPoolMaximumLocalBadConnectionTolerance()
      • getPoolMaximumCheckoutTime

        public int getPoolMaximumCheckoutTime()
      • getPoolTimeToWait

        public int getPoolTimeToWait()
      • getPoolPingQuery

        public String getPoolPingQuery()
      • isPoolPingEnabled

        public boolean isPoolPingEnabled()
      • getPoolPingConnectionsNotUsedFor

        public int getPoolPingConnectionsNotUsedFor()
      • forceCloseAll

        public void forceCloseAll()
        Closes all active and idle connections in the pool.
      • getPoolState

        public PoolState getPoolState()
      • pushConnection

        protected void pushConnection​(org.apache.ibatis.datasource.pooled.PooledConnection conn)
                               throws SQLException
        Throws:
        SQLException
      • pingConnection

        protected boolean pingConnection​(org.apache.ibatis.datasource.pooled.PooledConnection conn)
        Method to check to see if a connection is still usable
        Parameters:
        conn - - the connection to check
        Returns:
        True if the connection is still usable
      • unwrapConnection

        public static Connection unwrapConnection​(Connection conn)
        Unwraps a pooled connection to get to the 'real' connection
        Parameters:
        conn - - the pooled connection to unwrap
        Returns:
        The 'real' connection