DataBaseConnection

Overview | Package | Class | Use | Tree | Deprecated | Index | Help

PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## com.fenalco.utilities.database
Class DataBaseConnection

    java.lang.Object
      com.fenalco.utilities.database.DataBaseConnection

    public class DataBaseConnection

extends java.lang.Object

Author:
  Andrés Romero Rodríguez esta clase es la que se conecta a la base de datos, implementa un pool de conexiones a la base de datos basandose en los parámetros pasados en el archivo database.xml

Field Summary
`private java.util.Vector` | `freeConnectios` Este es el pool de conexiones, un vector que almacena las conexiones que están disponibles
`private int` | `m_nCheckedOut` Entero que indica cuantas conexiones se están usando
`private int` | `m_nMaxConnections` Número máximo de conexiones simultaneas que se tendrán a la base de datos
`private int` | `m_nPort` Puerto al que nos vamos a conectar para acceder a la base de datos
`private int` | `m_nTimeOut` El número de segundos para el hilo que va a limpiar las conexiones
`private java.lang.String` | `m_sDataBaseName` El nombre de la base de datos a la que nos vamos a conectar
`private java.lang.String` | `m_sDB` Un string que representa el nombre de la base de datos a la cual nos vamos a conectar
`private java.lang.String` | `m_sIP` IP de la base de datos
`private java.lang.String` | `m_sPassword` Contraseña para acceder a la base de datos
`private java.lang.String` | `m_sUser` Usuario de la base de datos
`private static DataBaseConnection` | `m_this` La unica referencia a esta clase que va a existir
`private PoolManager` | `poolManager` va a administrar el pool para que no crezca tanto

Constructor Summary
`private` | `DataBaseConnection()` como esta clase es un singleton, el constructor es privado para que solo exista un objeto que realiza conexiones a la base de datos

Method Summary
`void` | `freeConnection(java.sql.Connection conn)` este método se usa para devolver una conexión al pool cuando se ha terminado de utilizar
`java.sql.Connection` | `getConnection()` Este método retorna una conexión del pool, si todas las conexiones del pool ya están en uso, espera hasta que haya una disponible
`java.lang.String` | `getDataBase()`
`java.util.Vector` | `getFreeConnections()`
`static DataBaseConnection` | `getInstance()` esta función se utiliza para obtener una instancia de esta clase
`int` | `getTimeOut()` Retorna el timeout para limpiar el pool
`static void` | `main(java.lang.String[] args)`
`private java.sql.Connection` | `newConnection()` este método se usa para crear una nueva conexión con la base de datos
`private java.sql.Connection` | `newOracleConnection()`
`private java.sql.Connection` | `newPostgresConnection()`
`void` | `release()` Este método se usa para limpiar el pool, es decir, se cierran todas las conexiones y se eliminan del vector

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Field Detail

### m_sDB

    private java.lang.String m_sDB

  Un string que representa el nombre de la base de datos a la cual nos vamos a conectar

### m_sIP

    private java.lang.String m_sIP

  IP de la base de datos

### m_nPort

    private int m_nPort

  Puerto al que nos vamos a conectar para acceder a la base de datos

### m_sUser

    private java.lang.String m_sUser

  Usuario de la base de datos

### m_sPassword

    private java.lang.String m_sPassword

  Contraseña para acceder a la base de datos

### m_sDataBaseName

    private java.lang.String m_sDataBaseName

  El nombre de la base de datos a la que nos vamos a conectar

### m_nMaxConnections

    private int m_nMaxConnections

  Número máximo de conexiones simultaneas que se tendrán a la base de datos

### m_nTimeOut

    private int m_nTimeOut

  El número de segundos para el hilo que va a limpiar las conexiones

### freeConnectios

    private java.util.Vector freeConnectios

  Este es el pool de conexiones, un vector que almacena las conexiones que están disponibles

### m_nCheckedOut

    private int m_nCheckedOut

  Entero que indica cuantas conexiones se están usando

### m_this

    private static DataBaseConnection m_this

  La unica referencia a esta clase que va a existir

### poolManager

    private PoolManager poolManager

  va a administrar el pool para que no crezca tanto

Constructor Detail

### DataBaseConnection

    private DataBaseConnection()
                        throws DataBaseConnectionException

  como esta clase es un singleton, el constructor es privado para que solo exista un objeto que realiza conexiones a la base de datos

  Throws:
    `DataBaseConnectionException`

Method Detail

### getInstance

    public static DataBaseConnection getInstance()
                                          throws DataBaseConnectionException

  esta función se utiliza para obtener una instancia de esta clase

  Throws:
    `DataBaseConnectionException`

### freeConnection

    public void freeConnection(java.sql.Connection conn)

  este método se usa para devolver una conexión al pool cuando se ha terminado de utilizar

### getConnection

    public java.sql.Connection getConnection()
                                      throws EngineNotSupportedException,
                                             DataBaseConnectionException

  Este método retorna una conexión del pool, si todas las conexiones del pool ya están en uso, espera hasta que haya una disponible

  Throws:
    `EngineNotSupportedException`
    `DataBaseConnectionException`

### release

    public void release()

  Este método se usa para limpiar el pool, es decir, se cierran todas las conexiones y se eliminan del vector

### newConnection

    private java.sql.Connection newConnection()
                                       throws EngineNotSupportedException,
                                              DataBaseConnectionException

  este método se usa para crear una nueva conexión con la base de datos

  Throws:
    `EngineNotSupportedException`
    `DataBaseConnectionException`

### newPostgresConnection

    private java.sql.Connection newPostgresConnection()
                                               throws DataBaseConnectionException

  Throws:
    `DataBaseConnectionException`

### newOracleConnection

    private java.sql.Connection newOracleConnection()
                                             throws DataBaseConnectionException

  Throws:
    `DataBaseConnectionException`

### getFreeConnections

    public java.util.Vector getFreeConnections()

### getTimeOut

    public int getTimeOut()

  Retorna el timeout para limpiar el pool

### main

    public static void main(java.lang.String[] args)

### getDataBase

    public java.lang.String getDataBase()

Overview | Package | Class | Use | Tree | Deprecated | Index | Help

PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD