私はJavaアプリケーションからOracleデータベースへのクエリーのパフォーマンスを最適化しようとしています。これは、SQLデベロッパーツールで実行されている同じクエリーがJavaアプリケーションよりも速いためです。 私は2つの異なるデータベースを持っています(1つはテスト/開発者用、もう1つはプロダクション用です)。Ojdbcドライバエラー
開発者のデータベースのバージョンは次のとおりです。11グラムのEnterprise Editionリリース11.2.0.1.0 - 64
本番データベースのバージョンは次のとおりです。11グラムのEnterprise Editionリリース11.2.0.3.0 - 64
私のjavaアプリケーションました両方のデータベースでうまく動作するojdbc14ドライバを使用していますが、パフォーマンスクエリーはゆっくりと動作しています。そこで調査したところ、パフォーマンスを向上させる良い方法は、Javaアプリケーションで正しいojdbcドライバを使用することでした(データベースのバージョンに応じて)。そこで、ojdbc6ドライバ(11.2.0.3 oracle版)をダウンロードしました。それは開発者データベースでは問題なく動作しますが、本番データベースに接続しようとすると次のエラーが発生します。
java.lang.NoSuchMethodError:oracle.i18n.text.converter.CharacterConverterOGS.getInstance(I)Loracle/i18n /テキスト/コンバータ/ CharacterConverter;
異なるojdbcドライバ・バージョン(5,6)で試しましたが、本番データベースでのみ同じエラーが発生します。
いくつかお手伝いしますか?
申し訳ありません。
よろしくお願いいたします。
編集1:私はと間違っていくつかのことがだと思う
<bean id="dataSource" class="com.mchange.v2.c3p0.ComboPooledDataSource" destroy-method="close">
<property name="driverClass" value="${jdbc.driverClassName}"/>
<property name="jdbcUrl" value="${jdbc.url}"/>
<property name="user" value="${jdbc.username}"/>
<property name="password" value="${jdbc.password}"/>
<property name="maxPoolSize" value="${jdbc.maxPoolSize}" />
<property name="minPoolSize" value="${jdbc.minPoolSize}" />
<property name="maxStatements" value="${jdbc.maxStatements}" />
</bean>
<bean id="dataSourceDataStage" class="com.mchange.v2.c3p0.ComboPooledDataSource" destroy-method="close">
<property name="driverClass" value="${jdbc.datastage.driverClassName}"/>
<property name="jdbcUrl" value="${jdbc.datastage.url}"/>
<property name="user" value="${jdbc.datastage.username}"/>
<property name="password" value="${jdbc.datastage.password}"/>
<property name="maxPoolSize" value="${jdbc.datastage.maxPoolSize}" />
<property name="minPoolSize" value="${jdbc.datastage.minPoolSize}" />
<property name="maxStatements" value="${jdbc.datastage.maxStatements}" />
oracle upc接続プールを試してください。ここにコードを貼り付ける必要があります – CSK