sql >> Database >  >> RDS >> Oracle

OracleDataSource versus Oracle UCP PoolDataSource

Het nieuwste Oracle jdbc-stuurprogramma (11.2.0.1.0) geeft expliciet aan dat de Oracle Implicit Connection-cache (die OracleDataSource gebruikt) is verouderd:

Oracle JDBC Drivers release 11.2.0.1.0 productie Readme.txt

Wat is er nieuw in deze release?

Universal Connection Pool In deze release is de Oracle Implicit Connection Cache-functie verouderd. Gebruikers worden sterk aangemoedigd om in plaats daarvan de nieuwe UniversalConnection Pool te gebruiken. De UCP heeft alle functies van de ICC, plus nog veel meer. De UCP is beschikbaar in een apart jar-bestand,ucp.jar.

Dus ik denk dat het beter is om UCP te gaan gebruiken, maar de documentatie is niet zo goed. Ik heb bijvoorbeeld geen manier gevonden om UCP met spring te gebruiken...

UPDATE: Ik heb de juiste veerconfiguratie gevonden:OK Ik denk dat ik de juiste configuratie heb gevonden:

<bean id="dataSource" class="oracle.ucp.jdbc.PoolDataSourceFactory" factory-method="getPoolDataSource">
    <property name="URL" value="jdbc:oracle:thin:@myserver:1521:mysid" />
    <property name="user" value="myuser" />
    <property name="password" value="mypassword" />
    <property name="connectionFactoryClassName" value="oracle.jdbc.pool.OracleDataSource" />
    <property name="connectionPoolName" value="ANAG_POOL" />
    <property name="minPoolSize" value="5" />
    <property name="maxPoolSize" value="10" />
    <property name="initialPoolSize" value="5" />
    <property name="inactiveConnectionTimeout" value="120" />
    <property name="validateConnectionOnBorrow" value="true" />
    <property name="maxStatements" value="10" />
</bean>

De sleutel is om de juiste fabrieksklasse en de juiste fabrieksmethode te specificeren



  1. Geheugendruk Analyse Risicostatus

  2. PostgreSQL:Wijzig OWNER op alle tafels tegelijk in PostgreSQL

  3. Een goede referentie voor Oracle PL/SQL

  4. Een Python-dictaat gebruiken voor een SQL INSERT-instructie