Configuración de la conectividad de base de datos en el perfil Liberty

Puede configurar un origen de datos asociado a distintos proveedores de JDBC para la conectividad de base de datos. Los proveedores de JDBC proporcionan las clases de implementación de controlador que son necesarias para la conectividad de JDBC con su base de datos de proveedor específica.

Acerca de esta tarea

Para acceder a una base de datos desde su aplicación, debe utilizar un origen de datos. Los orígenes de datos los proporcionan los controladores JDBC y se presentan con las siguientes variedades:
  • javax.sql.DataSource

    Este es el formato de un origen de datos. No proporciona la interoperatividad que aumenta la agrupación de conexiones, y no puede participar como un recurso con capacidad de dos fases en las transacciones que implican varios recursos.

  • javax.sql.ConnectionPoolDataSource

    Este tipo de origen de datos está habilitado para la agrupación de conexiones. No puede participar como un recurso con capacidad de dos fases en las transacciones que implican varios recursos.

  • javax.sql.XADataSource

    Este tipo de origen de datos está habilitado para la agrupación de conexión y puede participar como un recurso con capacidad de dos fases en las transacciones que implican varios recursos.

Para poder utilizarlo en el perfil Liberty, su controlador JDBC debe proporcionar al menos uno de estos tipos de orígenes de datos. Para los controladores JDBC utilizados habitualmente, el perfil Liberty ya reconoce la implementación de los nombres de clase para los diferentes tipos de orígenes de datos. Sólo tiene que indicar el perfil Liberty dónde se encuentra el controlador JDBC.

Procedimiento

  1. En el archivo server.xml , defina una biblioteca compartida que apunte a la ubicación de los archivos JAR del controlador JDBC o de los archivos comprimidos. Por ejemplo:
    <library id="DB2JCC4Lib">
        <fileset dir="C:/DB2/java" includes="db2jcc4.jar db2jcc_license_cisuz.jar"/>
    </library>
  2. Defina un origen de datos utilizando el controlador JDBC. Si no especifica el tipo de origen de datos, el perfil Liberty elige uno en el siguiente orden, dependiendo de cuál esté disponible.
    • javax.sql.ConnectionPoolDataSource
    • javax.sql.DataSource
    • javax.sql.XADataSource
    A continuación se muestra un ejemplo que acepta el valor predeterminado para el tipo de origen de datos :
    <dataSource id="db2" jndiName="jdbc/db2">
        <jdbcDriver libraryRef="DB2JCC4Lib"/>
        <properties.db2.jcc databaseName="SAMPLEDB" serverName="localhost" portNumber="50000"/>
    </dataSource>
    A continuación se muestra un ejemplo que utiliza el tipo javax.XADataSource:
    <dataSource id="db2xa" jndiName="jdbc/db2xa" type="javax.sql.XADataSource">
        <jdbcDriver libraryRef="DB2JCC4Lib"/>
        <properties.db2.jcc databaseName="SAMPLEDB" serverName="localhost" portNumber="50000"/>
    </dataSource>
  3. Opcional: Configure los atributos para el origen de datos, tales como las propiedades del proveedor de JDBC y las propiedades de la agrupación de conexiones.
    Por ejemplo:
    <dataSource id="db2" jndiName="jdbc/db2" connectionSharing="MatchCurrentState" isolationLevel="TRANSACTION_READ_COMMITTED" statementCacheSize="20">
        <connectionManager maxPoolSize="20" minPoolSize="5" connectionTimeout="10s" agedTimeout="30m"/>
        <jdbcDriver libraryRef="DB2JCC4Lib"/>
        <properties.db2.jcc databaseName="SAMPLEDB" serverName="localhost" portNumber="50000" currentLockTimeout="30s" user="user1" password="pwd1"/>
    </dataSource>
    Para obtener una lista completa de los atributos de configuración para el elemento dataSource, el elemento connectionManager y algunos proveedores de JDBC utilizados habitualmente, consulte Elementos de configuración en el archivo server.xml.
  4. Opcional: Configure los orígenes de datos para las bases de datos utilizadas habitualmente según los siguientes ejemplos.
    Para DB2
    <dataSource id="db2" jndiName="jdbc/db2">
        <jdbcDriver libraryRef="DB2JCC4Lib"/>
        <properties.db2.jcc databaseName="SAMPLEDB" serverName="localhost" portNumber="50000"/>
    </dataSource>
    
    <library id="DB2JCC4Lib">
        <fileset dir="C:/DB2/java" includes="db2jcc4.jar db2jcc_license_cisuz.jar"/>
    </library>
    Para DB2 en iSeries (Nativo)
    <dataSource id="db2iNative" jndiName="jdbc/db2iNative">
        <jdbcDriver libraryRef="DB2iNativeLib"/>
        <properties.db2.i.native databaseName="*LOCAL"/>
    </dataSource>
    
    <library id="DB2iNativeLib">
        <fileset dir="/QIBM/Proddata/java400/jdk6/lib/ext" includes="db2_classes16.jar"/>
    </library>
    Para DB2 en iSeries (Toolbox)
    <dataSource id="db2iToolbox" jndiName="jdbc/db2iToolbox">
        <jdbcDriver libraryRef="DB2iToolboxLib"/>
        <properties.db2.i.toolbox databaseName="SAMPLEDB" serverName="localhost"/>
    </dataSource>
    
    <library id="DB2iToolboxLib">
        <fileset dir="/QIBM/ProdData/Http/Public/jt400/lib" includes="jt400.jar"/>
    </library>
    Para Derby Embedded
    <dataSource id="derbyEmbedded" jndiName="jdbc/derbyEmbedded">
        <jdbcDriver libraryRef="DerbyLib"/>
        <properties.derby.embedded databaseName="C:/databases/SAMPLEDB" createDatabase="create"/>
    </dataSource>
    
    <library id="DerbyLib">
        <fileset dir="C:/db-derby-10.8.1.2-bin/lib"/>
    </library>
    Para Derby Network Client
    <dataSource id="derbyClient" jndiName="jdbc/derbyClient">
        <jdbcDriver libraryRef="DerbyLib"/>
        <properties.derby.client databaseName="C:/databases/SAMPLEDB" createDatabase="create" serverName="localhost" portNumber="1527"/>
    </dataSource>
    
    <library id="DerbyLib">
        <fileset dir="C:/db-derby-10.8.1.2-bin/lib"/>
    </library>
    Para Informix JCC
    <dataSource id="informixjcc" jndiName="jdbc/informixjcc">
        <jdbcDriver libraryRef="DB2JCC4Lib"/>
        <properties.informix.jcc databaseName="SAMPLEDB" serverName="localhost" portNumber="1526"/>
    </dataSource>
    
    <library id="DB2JCC4Lib">
        <fileset dir="C:/Drivers/jcc/4.8" includes="db2jcc4.jar db2jcc_license_cisuz.jar"/>
    </library>
    Para Informix JDBC
    <dataSource id="informix" jndiName="jdbc/informix">
        <jdbcDriver libraryRef="InformixLib"/>
        <properties.informix databaseName="SAMPLEDB" ifxIFXHOST="localhost" 
                             serverName="ol_machinename" portNumber="1526"/>
    </dataSource>
    
    <library id="InformixLib">
        <fileset dir="C:/Drivers/informix" includes="ifxjdbc.jar ifxjdbcx.jar"/>
    </library>
    Para Microsoft SQL Server (controlador JDBC de Microsoft)
    <dataSource id="mssqlserver" jndiName="jdbc/mssqlserver">
        <jdbcDriver libraryRef="MSJDBCLib"/>
        <properties.microsoft.sqlserver databaseName="SAMPLEDB" 
                                        serverName="localhost" portNumber="1433"/>
    </dataSource>
    
    <library id="MSJDBCLib">
        <fileset dir="C:/sqljdbc_4.0/enu" includes="sqljdbc4.jar"/>
    </library>
    Para Microsoft SQL Server (DataDirect Connect para JDBC)
    <dataSource id="ddsqlserver" jndiName="jdbc/ddsqlserver">
        <jdbcDriver libraryRef="DataDirectLib"/>
        <properties.datadirect.sqlserver databaseName="SAMPLEDB" 
                                         serverName="localhost" portNumber="1433"/>
    </dataSource>
    
    <library id="DataDirectLib">
        <fileset dir="C:/DataDirect/Connect-4.2/lib" includes="sqlserver.jar"/>
    </library>
    Para MySQL
    <dataSource id="mySQL" jndiName="jdbc/mySQL">
        <jdbcDriver libraryRef="MySQLLib"/>
        <properties databaseName="SAMPLEDB" serverName="localhost" portNumber="3306"/>
    </dataSource>
    
    <library id="MySQLLib">
        <fileset dir="C:/mysql-connector-java-x.x.xx" 
                 includes="mysql-connector-java-x.x.xx.jar"/>
    </library>
    Para Oracle
    <dataSource id="oracle" jndiName="jdbc/oracle">
        <jdbcDriver libraryRef="OracleLib"/>
        <properties.oracle URL="jdbc:oracle:thin:@//localhost:1521/SAMPLEDB"/>
    </dataSource>
    
    <library id="OracleLib">
        <fileset dir="C:/Oracle/lib" includes="ojdbc6.jar"/>
    </library>
    Para Sybase
    <dataSource id="sybase" jndiName="jdbc/sybase">
        <jdbcDriver libraryRef="SybaseLib"/>
        <properties.sybase databaseName="SAMPLEDB" serverName="localhost" portNumber="5000"/>
    </dataSource>
    
    <library id="SybaseLib">
        <fileset dir="C:/Drivers/sybase" includes="jconn4.jar"/>
    </library>
    Para solidDB
    <dataSource id="solidDB" jndiName="jdbc/solidDB">
        <jdbcDriver libraryRef="solidLib"/>
        <properties databaseName="SAMPLEDB" URL="jdbc:solid://localhost:2315/"/>
    </dataSource>
    
    <library id="solidLib">
        <fileset dir="C:/Drivers/solidDB" includes="SolidDriver2.0.jar"/>
    </library>
    Para un controlador JDBC desconocido para el perfil Liberty
    <dataSource id="sample" jndiName="jdbc/sample" type="javax.sql.XADataSource">
        <jdbcDriver libraryRef="SampleJDBCLib" 
                    javax.sql.XADataSource="com.ibm.sample.SampleXADataSource"/>
        <properties databaseName="SAMPLEDB" hostName="localhost" port="12345"/>
    </dataSource>
    
    <library id="SampleJDBCLib">
        <fileset dir="C:/Drivers/SampleJDBC/" includes="sampleDriver.jar"/>
    </library>
    En el ejemplo, el controlador JDBC se encuentra en C:/Drivers/SampleJDBC/sampleDriver.jar y proporciona una implementación de javax.sql.XADataSource denominada com.ibm.sample.SampleXADataSource. El controlador JDBC también proporciona propiedades de orígenes de datos específicas de proveedor, tales como databaseName, hostName y port.

Icono que indica el tipo de tema Tema de tarea

Términos y condiciones para centros de información | Comentarios


Icono de indicación de fecha y hora Última actualización: 15 de junio de 2015
http://www14.software.ibm.com/webapp/wsbroker/redirect?version=phil&product=was-libcore-mp&topic=twlp_dep_configuring_ds
Nombre de archivo:twlp_dep_configuring_ds.html