Class DbcHelper


  • public class DbcHelper
    extends java.lang.Object
    Database Connectivity Helper class.
    Since:
    0.2.0
    Author:
    Thanh Nguyen
    • Constructor Summary

      Constructors 
      Constructor Description
      DbcHelper()  
    • Method Summary

      All Methods Static Methods Concrete Methods 
      Modifier and Type Method Description
      static boolean commitTransaction​(java.sql.Connection conn)
      Commits a transaction.
      static void destroy()  
      static DatabaseVendor detectDbVendor​(java.sql.Connection conn)
      Detect database vender info.
      static java.sql.Connection getConnection​(java.lang.String dataSourceName)
      Obtains a JDBC connection from a named data-source (with no transaction enabled).
      static java.sql.Connection getConnection​(java.lang.String dataSourceName, boolean startTransaction)
      Obtains a JDBC connection from a named data-source (start a new transaction if specified).
      static javax.sql.DataSource getDataSource​(java.sql.Connection conn)
      Get the DataSource that hosts the specified Connection.
      static javax.sql.DataSource getJdbcDataSource​(java.lang.String name)
      Retrieves a registered JDBC data source by name.
      static void init()  
      static boolean registerJdbcDataSource​(java.lang.String name, javax.sql.DataSource dataSource)
      Registers a named JDBC datasource.
      static void returnConnection​(java.sql.Connection conn)
      Returns a JDBC connection obtained from getConnection(String).
      static boolean rollbackTransaction​(java.sql.Connection conn)
      Rollbacks a transaction.
      static boolean startTransaction​(java.sql.Connection conn)
      Starts a transaction.
      static boolean unregisterJdbcDataSource​(java.lang.String name)
      Unregisters a JDBC datasource by name.
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Constructor Detail

      • DbcHelper

        public DbcHelper()
    • Method Detail

      • init

        public static void init()
      • destroy

        public static void destroy()
      • registerJdbcDataSource

        public static boolean registerJdbcDataSource​(java.lang.String name,
                                                     javax.sql.DataSource dataSource)
        Registers a named JDBC datasource.
        Parameters:
        name -
        dataSource -
        Returns:
      • unregisterJdbcDataSource

        public static boolean unregisterJdbcDataSource​(java.lang.String name)
        Unregisters a JDBC datasource by name.
        Parameters:
        name -
        Returns:
      • getJdbcDataSource

        public static javax.sql.DataSource getJdbcDataSource​(java.lang.String name)
        Retrieves a registered JDBC data source by name.
        Parameters:
        name -
        Returns:
      • getConnection

        public static java.sql.Connection getConnection​(java.lang.String dataSourceName)
                                                 throws java.sql.SQLException
        Obtains a JDBC connection from a named data-source (with no transaction enabled).

        Note: call returnConnection(Connection) to return the connection back to the pool. Do NOT use Connection.clode().

        Parameters:
        dataSourceName -
        Returns:
        Throws:
        java.sql.SQLException
      • getConnection

        public static java.sql.Connection getConnection​(java.lang.String dataSourceName,
                                                        boolean startTransaction)
                                                 throws java.sql.SQLException
        Obtains a JDBC connection from a named data-source (start a new transaction if specified).

        Note: call returnConnection(Connection) to return the connection back to the pool. Do NOT use Connection.clode().

        Parameters:
        dataSourceName -
        startTransaction -
        Returns:
        Throws:
        java.sql.SQLException
      • startTransaction

        public static boolean startTransaction​(java.sql.Connection conn)
                                        throws java.sql.SQLException
        Starts a transaction. Has no effect if already in a transaction.
        Parameters:
        conn -
        Throws:
        java.sql.SQLException
        Since:
        0.4.0
      • commitTransaction

        public static boolean commitTransaction​(java.sql.Connection conn)
                                         throws java.sql.SQLException
        Commits a transaction. Has no effect if not in a transaction.

        Note: autoCommit is set to true after calling this method.

        Parameters:
        conn -
        Returns:
        Throws:
        java.sql.SQLException
        Since:
        0.4.0
      • rollbackTransaction

        public static boolean rollbackTransaction​(java.sql.Connection conn)
                                           throws java.sql.SQLException
        Rollbacks a transaction. Has no effect if not in a transaction.

        Note: autoCommit is set to true after calling this method.

        Parameters:
        conn -
        Returns:
        Throws:
        java.sql.SQLException
        Since:
        0.4.0
      • returnConnection

        public static void returnConnection​(java.sql.Connection conn)
                                     throws java.sql.SQLException
        Returns a JDBC connection obtained from getConnection(String).
        Parameters:
        conn -
        Throws:
        java.sql.SQLException
      • getDataSource

        public static javax.sql.DataSource getDataSource​(java.sql.Connection conn)
        Get the DataSource that hosts the specified Connection.
        Parameters:
        conn -
        Returns:
        Since:
        0.8.2
      • detectDbVendor

        public static DatabaseVendor detectDbVendor​(java.sql.Connection conn)
                                             throws java.sql.SQLException
        Detect database vender info.
        Parameters:
        conn -
        Returns:
        Throws:
        java.sql.SQLException