Creación y despliegue de objetos DataSource

A partir de la versión 2.0, JDBC proporciona la interfaz DataSource para conectar con una fuente de datos. La utilización de la interfaz DataSource es la forma preferida de conectar con una fuente de datos.

Acerca de esta tarea

La utilización de la interfaz DataSource comprende dos etapas:
  • Crear y desplegar objetos DataSource. Esto lo suele hacer un administrador del sistema, utilizando una herramienta como WebSphere® Application Server.
  • Utilizar objetos DataSource para crear una conexión. Esto se realiza en el programa de aplicación.
Este tema contiene información necesaria para que el propio usuario pueda crear y desplegar objetos DataSource.
El IBM® Data Server Driver for JDBC and SQLJ proporciona las siguientes implementaciones de DataSource :
  • com.ibm.db2.jcc.DB2SimpleDataSource, que no da soporte a la agrupación de conexiones.Puede utilizar esta implementación con una conectividad de tipo 2 IBM Data Server Driver for JDBC and SQLJ o una conectividad de tipo 4 IBM Data Server Driver for JDBC and SQLJ.
  • com.ibm.db2.jcc.DB2ConnectionPoolDataSource, que da soporte a la agrupación de conexiones.Puede utilizar esta implementación con una conectividad de tipo 2 IBM Data Server Driver for JDBC and SQLJ o una conectividad de tipo 4 IBM Data Server Driver for JDBC and SQLJ.
  • com.ibm.db2.jcc.DB2XADataSource, que da soporte a la agrupación de conexiones y a las transacciones distribuidas. La agrupación de conexiones la proporciona WebSphere Application Server u otro servidor de aplicaciones.Puede utilizar esta implementación solo con conectividad de tipo 4 IBM Data Server Driver for JDBC and SQLJ.

Procedimiento

Para crear y desplegar un objeto DataSource, debe efectuar estas tareas:

  1. Cree una instancia de la implementación de DataSource adecuada.
  2. Establece las propiedades del objeto " DataSource ".
  3. Registre el objeto con el servicio de nombres Java Naming and Directory Interface (JNDI).

Ejemplo

El ejemplo siguiente muestra cómo realizar estas tareas.

Figura 1. Ejemplo de creación y despliegue de un objeto DataSource
import java.sql.*;        // JDBC base
import javax.naming.*;    // JNDI Naming Services
import javax.sql.*;       // Additional methods for JDBC
import com.ibm.db2.jcc.*; // IBM Data Server Driver for
                          // JDBC and SQLJ
                          // implementation of JDBC
                          // standard extension APIs

DB2SimpleDataSource dbds = new com.ibm.db2.jcc.DB2SimpleDataSource();   1 

dbds.setDatabaseName("db2loc1");                                        2 
dbds.setDescription("Our Sample Database");
dbds.setUser("john");
dbds.setPassword("mypw");
…
Context ctx=new InitialContext();                                       3 
Ctx.bind("jdbc/sampledb",dbds);                                         4 
Nota Descripción
1 Crea una instancia de la clase DB2SimpleDataSource.
2 Esta sentencia y las tres sentencias siguientes definen valores para propiedades del objeto DB2SimpleDataSource.
3 Crea un contexto para su utilización por JNDI.
4 Asocia el objeto dbds de DBSimple2DataSource con el nombre lógico jdbc/sampledb. Una aplicación que haga uso de este objeto puede hacer referencia a él utilizando el nombre jdbc/sampledb.