Konfigurationsunterschiede zwischen dem vollständigen Profil und dem Liberty-Profil: Elemente "dataSource" und "jdbcDriver"
Es gibt einige Unterschiede, die bei der Konfiguration von dataSource im Liberty-Profil und bei der Konfiguration von Datenquellen im vollständiges Profil zu beachten sind.
- Datenquelleneigenschaften mit unterschiedlichen Namen
- ifxIFX_LOCK_MODE_WAIT entspricht informixLockModeWait im vollständigen Profil.
- supplementalJDBCTrace entspricht supplementalTrace im vollständigen Profil.
- Datenquelleneigenschaften mit unterschiedlichen Werten
- beginTranForResultSetScrollingAPIs ist im Liberty-Profil standardmäßig true.
- beginTranForVendorAPIs ist im Liberty-Profil standardmäßig true.
- connectionSharing ist im Liberty-Profil standardmäßig MatchOriginalRequest.
- statementCacheSize ist im Liberty-Profil standardmäßig 10.
- Eigenschaft connectionSharing von Datenquellen
- Im Liberty-Profil kann connectionSharing entweder mit MatchOriginalRequest oder mit MatchCurrentState konfiguriert werden. Standardmäßig wird MatchOriginalRequest verwendet.
- Im vollständigen Profil kann connectionSharing differenzierter konfiguriert werden, d. h., einzelne Verbindungseigenschaften können basierend auf der ursprünglichen Verbindungsanforderung oder auf dem aktuellen Status der Verbindung zugeordnet werden. Im vollständigen Profil ist connectionSharing eine Kombination von Bits, die die Verbindungseigenschaften darstellen, die auf der Basis des aktuellen Status der Verbindung zugeordnet werden sollen. Im vollständigen Profil steht der Wert "0" für die Zuordnung aller Eigenschaften auf der Basis der ursprünglichen Verbindungsanforderung. Der Wert -1 steht für die Zuordnung aller Eigenschaften auf Basis des aktuellen Status der Verbindung. Der Standardwert für das vollständige Profil ist 1, d. h., die Isolationsstufe wird basierend auf dem aktuellen Status der Verbindung abgeglichen und alle anderen Eigenschaften basierend auf der ursprünglichen Verbindungsanforderung.
- Datenquelleneigenschaften für die ZeitdauerEigenschaften für die Zeitdauer können im Liberty-Profil optional mit Einheiten angegeben werden. Beispiel:
Im Abschnitt Konfigurationselemente in der Datei 'server.xml' sind die zulässigen Zeiteinheiten und Formate des Elements dataSource beschrieben. Das Weglassen der Einheiten im Liberty-Profil entspricht der Verwendung der im vollständigen Profil verwendeten Standardeinheiten.<dataSource id="informix" jndiName="jdbc/informix" queryTimeout="5m" ...> <properties.informix ifxIFX_LOCK_MODE_WAIT="120s" .../> </dataSource>
- Konfiguration für JDBC-Treiber
- Im Liberty-Profil können Sie denselben Ansatz für die Konfiguration verschiedener jdbcDriver-Elemente für XA-fähige und nicht XA-fähige Datenquellenimplementierungsklassen verwenden. Alternativ können Sie ein einziges jdbcDriver-Element für beide Klassentypen verwenden. Die Definition mehrerer jdbcDriver-Elemente bewirkt nicht, dass unterschiedliche Klassenladeprogramme verwendet werden. Im Liberty-Profil verwenden jdbcDriver-Elemente immer das Klassenladeprogramm der gemeinsam genutzten Bibliothek, mit der sie konfiguriert werden.
- Im vollständigen Profil wird ein JDBC-Provider definiert, der auf die JAR-Dateien, die komprimierten Dateien und die nativen Dateien des JDBC-Treibers verweist. Sie müssen gesonderte JDBC-Provider für XA-fähige und nicht XA-fähige Datenquellenimplementierungsklassen definieren.
Für einige der gängigen JDBC-Treiber leitet das Liberty-Profil die Namen der Datenquellenimplementierungsklassen basierend auf den Namen der JAR-Dateien des Treibers ab. Deswegen können Sie die Implementierungsklassennamen weglassen. Beispiel:<jdbcDriver id="Derby" libraryRef="DerbyLib"/> <library id="DerbyLib"> <fileset dir="C:/Drivers/derby" includes="derby.jar" /> </library>
Verwenden Sie die optionalen Eigenschaften der Standardimplementierungsklassen, um diese Klassen, wie z. B. javax.sql.DataSource, javax.sql.ConnectionPoolDataSource und javax.sql.XADataSource, zu überschreiben.
Das folgende Beispiel veranschaulicht, wie die javax.sql.XADataSource- und javax.sql.ConnectionPoolDataSource-Standardimplementierungen, die vom Liberty-Profil ausgewählt werden, überschrieben werden können.
Weitere Informationen zum Element jdbcDriver finden Sie unter Konfigurationselemente in der Datei 'server.xml'.<jdbcDriver id="Derby" libraryRef="DerbyLib" javax.sql.XADataSource="org.apache.derby.jdbc.EmbeddedXADataSource" javax.sql.ConnectionPoolDataSource="org.apache.derby.jdbc.EmbeddedConnectionPoolDataSource"/> <library id="DerbyLib"> <fileset dir="C:/Drivers/derby" includes="derby.jar" /> </library>