quarta-feira, 3 de agosto de 2011

Novidades da JDBC 4

Quem nunca precisou fazer uma conexão JDBC em Java que atire a primeira pedra! Apesar de hoje em dia não ser comum utilizar JDBC puro em grandes projetos, embora haja quem o faça, a API continua evoluindo junto com a especificação do JSE.
A nova API, JDBC 4, foi incorporada ao JDK 6 e traz algumas mudanças como: melhor gerenciamento de objetos e suporte a novos tipos de dados, além das já existentes flexibilidade e facilidade de uso.
Uma mudança que a nova versão trouxe é na hora de obtermos uma conexão com o banco. Antes era necessário carregar a classe do driver JDBC antes de chamar o getConnection de DriverManager, por exemplo:

Class.forName("com.mysql.jdbc.Driver");
//Chamada ao DriverManager aqui

Esta chamada não é mais necessária, pois o próprio DriverManager se encarregará de localizar e carregar  a classe do Driver JDBC, para isto, basta que nós adicionemos o .jar no classpath da aplicação.
Outra novidade é o suporte a tipos de dados em XML, que estão definidos na SQL2003. O objeto é o java.sql.SQLXML, podemos fazer por exemplo:

SQLXML xml = Connection.createSQLXML( );

ou ainda:

SQLXML xml = resultSet.getSQLXML( );
InputStream is = xml.getBinaryStream( );

Seu uso é similar aos dos tipos CLOB e BLOB, que são suportados desde à versão 2.0, a nova versão traz  também a classe RowId, que permite fazer o acesso a um registro de forma mais rápida.
Agora é possível executar funções escalares como:
  • CHAR_LENTH, CHARACTER_LENGTH
  • CURRENT_TIME, CURRENT_DATE

Com o advento dos frameworks de ORM, como Hibernate, JPA, ficou cada vez mais raro usar JDBC, talvez você leitor nem mesmo soubesse que a API estava na versão 4.0, to mentindo? :) Mas eu acredito que é bom estudar as bases, pois se soubermos utilizar bem JDBC será mais fácil aprender a usar ORM, assim como o estudo de Servlets/JSP é importante para o aprendizado de frameworks web como JSF, Struts, Vraptor etc. Especialmente quando precisamos desenvolver alguns projetos de pequeno porte, onde não é necessário utilizarmos esses frameworks de grande porte. Espero que tenham gostado do post! Até o próximo post então!

Nenhum comentário:

Postar um comentário