sexta-feira, 20 de novembro de 2009

Tutorial JavaDB, Eclipse e DTP

Fábio Miranda em 06 Abr 2008

A partir do Java 6, a Sun passou a distribuir o Apache Derby junto com o Java, sob a alcunha de JavaDB. Trata-se de uma alternativa interessante para uso em ambientes de desenvolvimento e teste. Além disso, ele possui um excelente plugin que permite sua integração com o Eclipse.

Além de mostrar como usar o Derby aliado ao Eclipse, este artigo serve como introdução para uma série de artigos sobre JPA que pretendo postar nas próximas semanas.

1) Configuração do JavaDB

O Java6 instala o JavaDB no diretório c:\Program Files\Sun\JavaDB. Recomendo copiar o diretório JavaDB direto para a raiz (c:\JavaDB). É necessário setar a variável DERBY_HOME=c:\JavaDB no classpath do sistema operacional.

2) Instalação dos plugins do Derby no Eclipse

Após baixar os plugins Derby Core e Derby UI em http://db.apache.org/derby/derby_downloads.html, descompactá-los e copiar os conteúdos das pastas "plugin" para a pasta "eclipse/plugin".

Os plugins do Derby são baixados nos links indicados acima - atenção, pois estão meio "escondidos" no meio da documentação.

3) Usando o Derby Integrado ao Eclipse

3.1) Iniciar o Eclipse e Criar projeto "Locadora"

3.2) Clicar com o botão direito no nome do projeto. Se o plugin do Derby foi corretamente instalado, aparecerá a opção "Apache Derby | Add Apache Derby Nature".

Ao habilitar esta opção, as bibliotecas do Derby são importadas para o Build Path do projeto, e novas opções são habilitadas para que possamos usar este plugin:

3.3) Execute o comando sysinfo (último item listado pelo plugin) para verificar se a instalação do Derby está OK (passos 1.1 e 1.2).

3.4) Execute os comandos Start Network Server e Stop Network Server toda vez que precisar iniciar / parar o servidor derby.

3.5) Use o IJ para realizar comandos SQL direto no Console do Eclipse:

4) A Perspectiva Database Development (Eclipse Data Tools Platform)

Mesmo sendo uma mão na roda ter o IJ integrado no Eclipse, a DTP se mostra uma alternativa mais interessante para realização de consultas.

4.1) Window | Open Perspective | Other | Database Development

4.2) Criar Novo Perfil de Conexão

4.3) Escolher Generic JDBC Connection - Derby Embedded não servirá para o nosso caso!

4.4) Nomear o perfil

4.5) Como esta é a primeira vez que configuramos o DTP, a lista drop-down de drivers encontra-se vazia. É necessário configurar novo driver (também pode ser feito em Window | Preferences | Connectivity | Driver Definitions).

4.6) Localizar o driver apropriado (no nosso caso, Derby 10.2) e adicionar nova definição.

4.7) Selecionar Derby Client Driver

4.8) Informar a localização do derbyclient.jar (c:\JavaDB\lib).

4.9) Alterar as propriedades de conexão. Muita atenção para o parâmetro User ID, setá-lo para APP. Leia este artigo no OnJava para entender o porquê.

4.10) Selecione o driver que acabamos de configurar.

4.11) Teste a conexão.

4.12) Conectar-se.

4.13) Expandir LOCADORA | Schemas | APP | Tables | Person | Columns, para visualizar a tabela que criamos anteriormente.

4.14) Vá em File | New | SQL File, e crie um arquivo query.sql na raiz do projeto.

4.15) Selecione o banco de dados e escreva uma query. Note que este editor possui recurso de auto-completar, que pode ser útil durante a construção de queries.

4.16) Com o botão direito, selecione Execute ALL. Os resultados são exibidos logo abaixo, podendo ser visualizados de forma tabular (bem melhor que o texto plano gerado pelo IJ).

4.17) Outra funcionalidade importante que o DTP oferece é a possibilidade de exportar os dados para txt, html, xml e csv, facilitando o transporte de dados para outros programas - por exemplo para uma boa e velha planilha eletrônica, a qual a maioria dos usuários de sistemas de software gostam de ler seus relatórios...

5) Conclusões

Espero ter conseguido demonstrar com clareza o poder do Derby - um BD relativamente fácil de configurar, já que acompanha a distribuição do Java 6, não requerendo a instalação de ferramentas adicionais.

Mostrei também como usá-lo junto com o Eclipse usando seus plugins próprios; em seguida o configuramos com o DTP, possibilitando centralizar no Eclipse as atividades de administração de Banco de Dados, minimizando a necessidade de ferramentas adicionais.

Até a próxima.

2 comentários:

  1. Gostei muito!!! Deixou minha mente bem mais nítida sobre o JavaDB. Muito legal.

    ResponderExcluir
  2. Bem legal Fábio.
    Com as interfaces da IDE facilitando a vida nem da graça nehh.
    Bom, um ponto negativo do plugin é que consegui criar schemas diferentes e no plugin não os vejo.
    Mas parabens pelo tutorial.

    ResponderExcluir