Class PGConnectionPoolDataSource

  • All Implemented Interfaces:
    java.io.Serializable, javax.naming.Referenceable, javax.sql.CommonDataSource, javax.sql.ConnectionPoolDataSource
    Direct Known Subclasses:
    ConnectionPool, Jdbc3ConnectionPool

    public class PGConnectionPoolDataSource
    extends BaseDataSource
    implements javax.sql.ConnectionPoolDataSource, java.io.Serializable
    PostgreSQL implementation of ConnectionPoolDataSource. The app server or middleware vendor should provide a DataSource implementation that takes advantage of this ConnectionPoolDataSource. If not, you can use the PostgreSQL implementation known as PoolingDataSource, but that should only be used if your server or middleware vendor does not provide their own. Why? The server may want to reuse the same Connection across all EJBs requesting a Connection within the same Transaction, or provide other similar advanced features.

    In any case, in order to use this ConnectionPoolDataSource, you must set the property databaseName. The settings for serverName, portNumber, user, and password are optional. Note: these properties are declared in the superclass.

    This implementation supports JDK 1.3 and higher.

    Author:
    Aaron Mulder (ammulder@chariotsolutions.com)
    See Also:
    Serialized Form
    • Constructor Detail

      • PGConnectionPoolDataSource

        public PGConnectionPoolDataSource()
    • Method Detail

      • getDescription

        public java.lang.String getDescription()
        Gets a description of this DataSource.
        Specified by:
        getDescription in class BaseDataSource
        Returns:
        description of this DataSource-ish thing
      • getPooledConnection

        public javax.sql.PooledConnection getPooledConnection()
                                                       throws java.sql.SQLException
        Gets a connection which may be pooled by the app server or middleware implementation of DataSource.
        Specified by:
        getPooledConnection in interface javax.sql.ConnectionPoolDataSource
        Throws:
        java.sql.SQLException - Occurs when the physical database connection cannot be established.
      • getPooledConnection

        public javax.sql.PooledConnection getPooledConnection​(java.lang.String user,
                                                              java.lang.String password)
                                                       throws java.sql.SQLException
        Gets a connection which may be pooled by the app server or middleware implementation of DataSource.
        Specified by:
        getPooledConnection in interface javax.sql.ConnectionPoolDataSource
        Throws:
        java.sql.SQLException - Occurs when the physical database connection cannot be established.
      • isDefaultAutoCommit

        public boolean isDefaultAutoCommit()
        Gets whether connections supplied by this pool will have autoCommit turned on by default. The default value is true, so that autoCommit will be turned on by default.
        Returns:
        true if connections supplied by this pool will have autoCommit
      • setDefaultAutoCommit

        public void setDefaultAutoCommit​(boolean defaultAutoCommit)
        Sets whether connections supplied by this pool will have autoCommit turned on by default. The default value is true, so that autoCommit will be turned on by default.
        Parameters:
        defaultAutoCommit - whether connections supplied by this pool will have autoCommit