Nejnovější ovladač Oracle jdbc (11.2.0.1.0) explicitně uvádí, že mezipaměť Oracle Implicit Connection (což je ta, která používá OracleDataSource) je zastaralá:
Oracle JDBC Drivers release 11.2.0.1.0 production Readme.txt
Co je nového v této verzi?
Universal Connection PoolV této verzi je funkce Oracle Implicit Connection Cache zastaralá. Uživatelům se důrazně doporučuje, aby místo toho používali nový UniversalConnection Pool. UCP má všechny funkce ICC a mnohem více. UCP je k dispozici v samostatném souboru jar, ucp.jar.
Takže si myslím, že je lepší začít používat UCP, ale dokumentace není tak dobrá. Například jsem nenašel způsob, jak používat UCP s pružinou...
AKTUALIZACE: Našel jsem správnou konfiguraci pružiny:OK Myslím, že jsem našel správnou konfiguraci:
<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>
Klíčem je specifikovat správnou tovární třídu a správnou tovární metodu