Oracle
 sql >> Datenbank >  >> RDS >> Oracle

Wie kann man eine DBCP-Verbindung in eine Oracle-Verbindung umwandeln?

Sie sollten einfach in der Lage sein, in die DBCP-spezifische Verbindungsklasse umzuwandeln und von dort die innere Oracle-Verbindung abzurufen:

import org.apache.commons.dbcp.DelegatingConnection;

DelegatingConnection dc = (DelegatingConnection)conn;
OracleConnection oc = (OracleConnection)pc.getInnermostDelegate();

Wenn Sie Tomcats integrierte Kopie von DBCP verwenden, benötigen Sie folgenden Import:

import org.apache.tomcat.dbcp.dbcp.DelegatingConnection;

Oder Sie können das in die Oracle JDBC-Treiberimplementierung integrierte Verbindungspooling verwenden. Dies gibt eine Oracle-Verbindung zurück. Eine einfache Einrichtung wäre:

<Resource auth="Container"
          connectionCacheName="CXCACHE"
          connectionCacheProperties="{MaxStatementsLimit=5,MinLimit=1, MaxLimit=1, ValidateConnection=true}"
          connectionCachingEnabled="true"
          description="Oracle Datasource"
          factory="oracle.jdbc.pool.OracleDataSourceFactory"
          name="jdbc/TestDB"
          user="default_user" 
          password="password"
          type="oracle.jdbc.pool.OracleDataSource"
          url="jdbc:oracle:thin:@//localhost:1521/orcl"
          />