最新のOraclejdbcドライバー(11.2.0.1.0)は、Oracle Implicit Connectionキャッシュ(OracleDataSourceを使用するキャッシュ)が非推奨であることを明示的に示しています:
OracleJDBCDriversリリース11.2.0.1.0プロダクションReadme.txt
このリリースの新機能
ユニバーサル接続プールこのリリースでは、Oracle ImplicitConnectionCache機能は廃止されました。代わりに、新しいUniversalConnectionプールを使用することを強くお勧めします。 UCPには、ICCのすべての機能に加えて、さらに多くの機能があります。 UCPは、別のjarファイルucp.jarで入手できます。
ですから、UCPを使い始めたほうがいいと思いますが、ドキュメントはそれほど良くありません。たとえば、春にUCPを使用する方法が見つかりませんでした...
更新: 正しいスプリング構成を見つけました:OK正しい構成を見つけたと思います:
<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>
重要なのは、適切なファクトリクラスと適切なファクトリメソッドを指定することです