Atenção: esse artigo tem um vídeo complementar. Clique e assista!

[links]Java Database Connectivity (JDBC) - Parte 2[/links]

[lead]De que se trata o artigo:

Neste artigo veremos os conceitos básicos da JDBC, os tipos de drivers e as operações básicas de manipulação de dados. Para aplicar esses conceitos na prática, daremos início à construção de uma aplicação de Agenda de Contatos utilizando a API.

Para que serve:

A maioria das aplicações que desenvolvemos necessita persistir alguns dos seus dados de alguma forma, geralmente utilizando um banco de dados. Com isso, é fundamental para o desenvolvedor saber criar aplicações capazes de persistir suas informações.

A JDBC é a API que permite construir aplicações Java para bancos de dados de forma uniforme e portável.

Em que situação o tema é útil:

O tema é útil para a criação ou manutenção de aplicações Java que utilizem bancos de dados. Entender os conceitos básicos da JDBC também ajuda a entender como funcionam os frameworks ORM, como Hibernate, TopLink etc.[/lead]

Grande parte das aplicações que construímos no dia a dia, principalmente aplicações corporativas ou web, têm a necessidade de armazenar seus dados de forma persistente e segura, para que possam ser recuperados ou alterados quando necessário.

Existem diversas formas de persistir os dados de uma aplicação, desde as mais simples como um arquivo de texto plano, ou arquivos mais bem estruturados (a exemplo dos arquivos XML), até engenhos sofisticados, como os SGBDs, que além do armazenamento, oferecem várias funções para facilitar e agilizar as operações sobre os dados armazenados.

Nosso artigo será apresentado em duas partes. Nesta primeira parte, veremos como utilizar a JDBC, API Java destinada a prover a integração com bases de dados. Através da construção de uma pequena aplicação de Agenda de Contatos, apresentaremos como efetuar as operações básicas suportadas por um banco de dados.

Na segunda parte do artigo, concluiremos a construção da nossa aplicação e validaremos na prática o princípio de portabilidade, oferecido pela JDBC. Para isso, testaremos nossa aplicação em dois bancos de dados distintos.

[nota]SGBD: Sistema de Gerenciamento de Banco de Dados – Responsável por gerenciar uma base de dados, oferecendo mecanismos para manipulação da estrutura e dos dados. Ex: Oracle, SQL Server, MySQL, DB2 PostgreSQL etc.[/nota]

[subtitulo]A JDBC[/subtitulo]

A Java Database Connectivity (JDBC) é uma API que tem como principal objetivo facilitar o acesso de aplicações Java à base de dados. A API, que faz parte do Java desde a versão 1.1 do Java SE, lançada em 1997, vem sofrendo constantes refinamentos e hoje se encontra em sua quarta versão.

Java Standard Edition: Conjunto de bibliotecas básicas da plataforma Java. Contém classes como Object, String e Date, coleções como List e Set, além de classes para manipulação de arquivos, rede e interfaces gráficas, dentre outras funcionalidades básicas de uma plataforma de desenvolvimento.

Através de uma arquitetura bem definida, a API possibilita a integração com diversas fontes de dados diferentes, sendo preciso apenas utilizar o “adaptador” (driver) correspondente.

Para manipular dados por meio da JDBC utilizamos instruções SQL, como SELECT, INSERT, UPDATE, DELETE, CREATE, DROP etc. Além disso, também é possível invocar Stored Procedures através da JDBC.

Stored Procedures: Funções ou procedimentos que ficam armazenados no próprio SGBD, escritos numa linguagem própria (ex.: PL/SQL para Oracle).

[subtitulo]Drivers[/subtitulo]

Na arquitetura da JDBC (ver Figura 1), o Driver é o componente responsável por se comunicar com uma fonte de dados específica. Dessa forma, caso seja necessário mudar a fonte de dados, de arquivos XML para um banco de dados como Oracle, por exemplo, basta utilizar o driver adequado.

Fonte de dados ou repositório: Termo genérico para se referir ao local onde os dados de uma ou mais aplicações serão armazenados. Exemplos comuns de fontes de dados são: memória, arquivos e SGBDs.

Existem quatro tipos de Driver JDBC, cada um com características específicas. A Tabela 1 mostra de forma resumida cada um deles.

Este artigo é exclusivo para assinantes. Descubra as vantagens
  • 473 Cursos
  • 10K Artigos
  • 100 DevCasts
  • 30 Projetos
  • 80 Guias
Tenha acesso completo