Determinando o Driver JDBC Oracle Adequado
Autor: Claudio Weiler | Publicado: 2015-06-23T20:59:00-03:00

O uso do driver JDBC adequado no seu ambiente de sistemas Java previne alguns erros inconvenientes e pode trazer ganho em performance e gestão de recursos. Nesta postagem vamos indicar a forma de identificar qual o driver JDBC para bancos Oracle mais adequado de acordo com o seu ambiente.

Quanto mais atual melhor
O primeiro passo é o mais simples, quanto mais atual o driver melhor! Mas, antes de pegar o último driver disponível é necessário verificar as versões do banco de dados e do JRE em uso.

Coletando as versões
Devemos verificar a versão do Java SE utilizado no ambiente da aplicação e a versão do banco de dados Oracle que a aplicação está utilizando, então devemos acessar a página do FAQ do JDBC da Oracle e verificar a tabela no item "What are the various supported Oracle database version vs JDBC compliant versions vs JDK version supported?". Nesta tabela procure a linha referente a versão do seu bando de dados e, nesta linha, identifique as versões de drivers suportados e anote o nome do driver de acordo com a versão do Java SE utilizado.

Curiosidade
Os drivers JDBC Oracle são fornecidos no padrão ojdbc{versao}.jar, este padrão procura referenciar a versão do JRE para qual o driver foi compilado, por exemplo:
- ojdbc14.jar = Java 1.4
- ojdbc5.jar = Java 5
- ojdbc6.jar = Java 6
- ojdbc7.jar = Java 7

Adicionalmente, existe internamente, nos arquivos .jar, o arquivo META-INF/MANIFEST.MF com atributos informando a versão de implementação do driver. Caso precisemos garantir que o driver que estamos utilizando é o mais atual podemos verificar a versão de implementação de um arquivo que já possuímos e comparar com a versão disponibilizada pela Oracle conforme a seguir.

Download
O próximo passo é acessar a página http://www.oracle.com/technetwork/database/features/jdbc/index-091264.html e clicar no link referente a versão do banco de dados em uso sempre dando preferência para a versão mais atual do driver. Este link irá nos levar a outra página com um acordo de licença que deve ser aceito, e diversos arquivos disponíveis, localize o nome do driver anotado conforme os passos acima e inicie o download.

Por exemplo, na data de escrita desta postagem, ao selecionar o link da versão de banco de dados Oracle 12c somos encaminhados a uma página com os arquivos ojdbc6 e ojdbc7 disponíveis, como usamos o Java SE 8 e nesta data ainda não existe o driver ojdbc8 o driver ojdbc7 é o recomendado então fazemos o download deste arquivo.

Versões mais antigas
A página do FAQ do JDBC da Oracle irá listar apenas as versões com suporte ativo, combinações de drivers e JREs mais antigos devem ser utilizadas somente em casos excepcionais.

Variações dos drivers
Na página de download dos drivers são encontrados algumas variações no formato ojdbc{versao}{variacao}.jar. Estes arquivos, no geral, serão utilizados em situações muito específicas, mas um deles merece atenção: ojdbc{versao}_g.jar, este arquivo possui inclui informações de debug e log e pode ser muito útil em ambientes de desenvolvimento e testes, mas não deve ser utilizado em ambientes de produção.

Informações adicionais sobre estas variações podem ser obtidas também no FAQ do JDBC da Oracle.