Obrigado por visitar a devmedia.com.br!

Precisamos de você para divulgar nossos vídeos e cursos gratuitos para a comunidade.

Se você gosta da devmedia.com.br por favor dê-nos o seu clique para o Google+ e ajude outros desenvolvedores ao redor do mundo.



Obrigado por seu apoio!
Equipe DevMedia

sair sem compartilhar (x)
DevMedia - asp.net, Java, Delphi, SQL e web Design, tudo em um só lugar!
Bem vindo a DevMedia!
LOGIN:     SENHA:

  #Este é um post fechado

Este post está disponível para assinantes da Java Magazine DIGITAL ou para quem possui Créditos DevMedia. Clique aqui para saber mais sobre como abrir este post!



Artigo Java Magazine 27 - Uma Aplicação Java Completa, Parte 3

Artigo publicado pela Java Magazine edição 27.

BRK##: 28 - 30

Esse artigo faz parte da revista Java Magazine edição 27. Clique aqui para ler todos os artigos desta edição

Atenção: por essa edição ser muito antiga não há arquivo PDF para download.Os artigos dessa edição estão disponíveis somente através do formato HTML. 

Uma Aplicação Completa

Parte 3: Banco de Dados e Preferências dos Usuários

Nesta parte concluímos a aplicação, implementando suporte a preferências e acesso a banco de dados, e fazendo ajustes finais

 

Neste artigo completamos aplicação de Lista de Tarefas (“Todo”), que iniciamos nesta coluna na Edição 25 – um exemplo completo do desenvolvimento de uma aplicação gráfica baseada no Swing, utilizando os recursos do IDE livre NetBeans.

O primeiro artigo desta série demonstrou como usar os recursos do editor visual do NetBeans para prototipar a interface como o usuário. O segundo mostrou como customizar a exibição de dados em JTable do Swing e como organizar o tratamento de eventos na aplicação, de acordo com a arquitetura Model-View-Controller.

Este último artigo mostra como filtrar as informações exibidas na tabela e como ler e gravar as informações em um banco de dados relacional.

Para manter a aplicação simples de instalar e distribuir, será utilizado o banco de dados HSQLDB (apresentado na Edição 7). Dessa forma, a aplicação final será formada por apenas dois pacotes jar: o Todo.jar gerado pelo NetBeans, contendo as classes da aplicação; e o hsqldb.jar do HSQLDB.

O quadro “Configurando o projeto no NetBeans” descreve como configurar o IDE para uso do HSQLDB durante o desenvolvimento da aplicação. E o leitor que preferir utilizar um banco de dados diferente pode consultar o quadro “Experimentando com outros bancos”.

 

Arquitetura da aplicação

No artigo anterior, chegamos a uma aplicação bastante funcional, que permitia edição e consulta de tarefas armazenadas em memoria, mas sem ainda persistir os dados em disco. Utilizamos a arquitetura MVC, pela qual as classes da aplicação devem atuar apenas num dos seguintes papéis: gerenciamento dos dados (Modelo), visualização dos dados (Visão), ou resposta às ações do usuário (Controle). Criamos um pacote para cada parte: o diagrama de classes UML da Figura 1 representa as principais classes desses pacotes.

 

Figura 1. Principais classes da aplicação de exemplo, desenvolvidas nas duas partes desta série. As classes em azul-claro são neste artigo, e a classe GerenciadorTarefas é praticamente reescrita.

 

No pacote todo.modelo, temos a classe Tarefa, construída com um VO (Value Object, um “repositório de dados” com pouca ou nenhuma inteligência própria). Há também a classe GerenciadorTarefas, cuja versão inicial tinha o objetivo de fazer uma “simulação” da persistência mantendo os dados em memória, pois o foco estava nas classes de visão e controle. Nesta edição vamos expandir a classe GerenciadorTarefas para conter o código de persistência num banco de dados. Também será criada uma nova classe de modelo, chamada Parametros, contendo os dados de configuração da aplicação – por exemplo, o diretório onde são salvos os arquivos do bando de dados.

O pacote todo.visao contém duas janelas que foram prototipadas na primeira parte, ListaTarefas (um JFrame) e EditaTarefas (um JDialog), além de várias classes auxiliares. A Figura 2 reapresenta as duas janelas, para que o leitor que não tenha idéia da aparência e funcionalidade da aplicação.

O pacote todo.controle contém uma única classe, ConsultaEditaTarefas, que responde às ações do usuário para criar, editar ou listar tarefas. Essas classe delega as ações em si para a classe de modelo GerenciadorTarefas e comanda a atualização das classes de visão, quando necessário. Neste artigo será criada outra classe controladora, chamada CriaAbreListaTarefas, responsável por criar novos bancos de dados existentes em outras localizações. Ela também receberá as funcionalidades de “miscelânea” da aplicação, por exemplo a exibição da caixa “Sobre”.

 

Figura 2. Janelas da aplicação Lista de Tarefas

 

Os três pacotes contêm ainda uma série de classes auxiliares não descritas aqui, por exemplo, exceções customizadas ou modelos para o JTable do Swing. Elas não afetam a arquitetura da aplicação e na maioria dos casos são utilizadas por classes fora dos respectivos pacotes.

A Figura 3 apresenta as classes da aplicação, na visão de projetos do NetBeans. O quadro “Todas as classes do exemplo” apresenta uma breve descrição do papel de cada uma.

 



ATENÇÃO! A exibição deste artigo foi interrompida.


  #Este é um post fechado

Este post está disponível para assinantes da Java Magazine DIGITAL ou para quem possui Créditos DevMedia. Clique aqui para saber mais sobre como abrir este post!







    4 COMENTÁRIOS

[Fechar]

Este post é fechado - você precisa ter acesso ao post para incluir um comentário.



Flavia Gomes
Bom dia Fernando, nao consegui localizar a parte 2 da serie de artigos:
Uma Aplicação Java Completa, poderia por gentileza enviar o link?
obrigada
Flavia


em 26/6/2009 10:48 - Responder

 

  Devmedia - Equipe De Moderação
Flávia,
o link da parte II deste curso está em http://www.devmedia.com.br/articles/viewcomp.asp?comp=9640


em 29/6/2009 19:31 - Responder
 

Raoni Kulesza
Oi Fernando,

Onde posso baixar os arquivos fonte desse artigo? O endereço antigo não está funcionando. :(

Agradeço desde já a ajuda.

Abraços.


em 15/6/2010 12:00 - Responder

 

  Devmedia - Equipe De Moderação
Raoni,
o links do arquivo desta revista está em http://www.devmedia.com.br/JavaMagazine/downloads/Edi_27.rar.
para acessar todos os arquivos das edições da Java, o link é http://www.devmedia.com.br/resumo/download.asp?site=6&idcanal=34


em 16/6/2010 18:35 - Responder
 



Autor
Fernando Lozano

é consultor independente, ativista do software livre e professor da Faculdade Metodista Bennett, além de autor do livro “Java em GNU/Linux” (Editora Alta Books). É detentor de certificações da Sun, IBM, Microsoft e Red Hat, sendo uma espécie de “agente duplo” nas várias tribos.


Space do autor
Estatísticas
Favorito:
Comentários:
Feedback:
Utilidade:
0   0
[Fechar]

Você precisa estar logado para dar um feedback.

Clique aqui para efetuar o login
[Fechar]
Este post está disponível para assinantes da Java Magazine DIGITAL ou para quem possui Créditos DevMedia.

  Conheça os planos de créditos DevMedia e visualize esse post agora mesmo!

Plano conveniência – Neste plano este post custa R$ 4,90 (Compre agora)
Esse plano permite que você compre somente um post, pagando por ele seu preço sem desconto.

Plano ocasional: Aqui este post custa: R$ 1,96 (assinante) ou R$ 2,45 (não-assinante)
Este plano é ideal para quem tem interesse em mais de um post. Você compra um mínimo de R$ 50,00 em créditos e ganha, em média, 50% de desconto no preço do post. Compre Créditos agora!

Assinatura de Créditos (Plano econômico) – Aqui este post custa R$ 1,47
Este plano é ideal para quem tem interesse em muitos posts. Com esse plano você compra R$ 180,00 em créditos e ganha, em média, 80% de desconto no preço do post. Assine este plano agora!

> Saiba mais sobre o Sistema de Créditos DevMedia
web-03
DevMedia  |  Anuncie  |  Fale conosco
Hospedagem web por Porta 80 Web Hosting
2012 - Todos os Direitos Reservados a web-03