Відмінності між класами12.jar, ojdbc14.jar, ojdbc5.jar і ojdbc6.jar


10

Ми плануємо модернізувати наші сервери додатків до нової версії JRun, яка веде з собою оновлення з Java 1.4 до Java 1.6. В рамках цього ми тестували різні частини нашого програмного забезпечення та зрозуміли, що потрібно також переглянути наші драйвери Oracle JDBC.

Переглядаючи сайт і документацію Oracle, різні версії, здається, орієнтовані в основному на різні версії API JDBC, які, як правило, відповідають версії JVM, в яку вони були введені. Оскільки Java (як правило) є сумісною назад, схоже дотримуватися ojdbc14.jar, можливо, матиме найбільш сенс, але я сподівався, що хтось там може трохи прояснити речі.

Документи спеціально називають таку діаграму, що змушує мене замислитися, чи офіційно підтримується ojdbc14.jar під Java 6.

classes12.jar - for Java 1.2 and 1.3
ojdbc14.jar - for Java 1.4 and 1.5
ojdbc5.jar - for Java 1.5
ojdbc6.jar - for Java 1.6

Чи є щось, про що я маю знати з системної точки зору, коли змішувати та співставляти драйвери та віртуальні машини?


Зауважте, що це не номер версії, тому ojdbc14.jar не старший / сумісніший, ніж ojdbc6.jar, він просто використовує формат файлів нижчого класу та не всі функції JDBC. Oracle рекомендує використовувати завжди останню версію миттєвого клієнта - навіть коли ваша БД є старшою версією.
eckes

Відповіді:


6

Так, ви можете запускати менші драйвери на новіших версіях Java. Просто ojdbc14.jar не містить функцій JDBC3 та JDBC4.

Ви повинні розрізняти час виконання та час компіляції. Під час виконання ви можете використовувати ojdbc14.jar в JRE6 до тих пір, поки у коді додатка не використовуються функції JDBC4. Якщо ви хочете використовувати ojdbc14.jar на шляху збирання, у вас можуть виникнути проблеми з не реалізованим методом.

Однак я загалом пропоную використовувати найновіші (тобто 11.1.0.7) драйвери JDBC та найвищу можливу версію. (Незалежно від версії БД).

Ви використовуєте режим OCI або THIN?


Ми використовуємо режим THIN.
Goyuix

1
використовувати найвищу доступну версію = більше помилок виправлено ...
slovon

1
@slovon насправді є документ про сертифікацію від Oracle, який розповідає про те, які драйвери можна використовувати з якою БД. драйвери 12,1 сертифіковані з 12.1 та 11.2. Для старих RDBMS потрібні драйвери 11.1. (І клієнт 12.1 постачається з ojdbc7.jar також, але не в InstantClient)
eckes
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.