Oracle DBと通信するJavaアプリケーションを開発する場合、2つのオプションがありますか?1つはオラクルシンドライバで、もう1つは独自のインストールが必要なOCIドライバです(誤解している場合は修正してください)。
さて、長所と短所は何ですか?明らかに、シンドライバはインストールの点ではるかに優れていますが、OCIでできることとできないことはありますか?
開発環境はTomcat6+Spring 3.0 + JPA(Hibernate)+apache-DBCPです
Oracle DBと通信するJavaアプリケーションを開発する場合、2つのオプションがありますか?1つはオラクルシンドライバで、もう1つは独自のインストールが必要なOCIドライバです(誤解している場合は修正してください)。
さて、長所と短所は何ですか?明らかに、シンドライバはインストールの点ではるかに優れていますが、OCIでできることとできないことはありますか?
開発環境はTomcat6+Spring 3.0 + JPA(Hibernate)+apache-DBCPです
ドライバーの選択はいくつかの要因に依存します。データベースへの呼び出しの性質(たとえば、アプリが多くのストアドプロシージャ呼び出しを使用していないように見える)、フェイルオーバーの要件(たとえば、クラスター化されたOracleサーバー)および分散トランザクション。通常、シンドライバーを使用することをお勧めしますが、OCIドライバーの特定の機能が必要な場合は、OCIドライバーを検討する必要があります。また、Oracle 10以降のドライバにはマッチング機能があり、最新のJVMでは実質的にパフォーマンスの違いはないと言われています。
JDBC-OCIドライバーでのみ使用可能で、JDBC-thinドライバーでは使用できない機能に依存していない限り、Oracleからの推奨事項はthinを使用することです。TransactionGuardやApplicationContinuityなどの最新のOracleDatabase機能は、JDBC-thinドライバーでのみ使用できます。シンドライバーはJDBC-OCIドライバーよりも使用されるため、バグはより迅速に修正されます。より安定していると考えられます。それでも確信が持てない場合は、OracleWeblogicServerにJDBC-thinドライバーのみが付属していると考えてください。