Skip to content

1. Introdução

O PDF deste documento está disponível |AQUI|.

Os exemplos deste documento estão disponíveis |AQUI|.

Propomos aqui explorar os fundamentos da programação web MVC em Java com servlets e páginas JSP. Após ler este documento e testar os exemplos, o leitor deverá ter adquirido os conceitos básicos da programação web em Java.


Para compreender os exercícios propostos, pode ser útil consultar o documento [Introdução à Programação Web em Java com Servlets e Páginas JSP (2002)]. As sugestões de leitura apresentadas no início de algumas secções remetem para este artigo. Este documento será doravante referido como [ref1].


Este documento pode ser utilizado de várias formas:

  1. instala-se as ferramentas, descarrega-se os códigos do site deste documento e realizam-se os testes propostos. Um principiante não tirará qualquer proveito deste método. Um programador experiente, por sua vez, pode fazê-lo, caso esteja apenas interessado em testar o ambiente de desenvolvimento Eclipse / WTP.
  1. instala-se as ferramentas, segue-se o documento e realizam-se os testes propostos, copiando e colando a partir deste documento. Não se lê o documento [ref1]. Ao proceder desta forma, começará a adquirir os fundamentos do desenvolvimento web, mas alguns pontos permanecerão obscuros ou «mágicos». Este é um método viável se quiser avançar rapidamente, com a intenção de aprofundar os conhecimentos apenas mais tarde, aquando da criação de uma aplicação pessoal e, talvez, com outro documento de referência que não o [ref1].
  2. Faz-se o mesmo que no método 2, mas consulta-se o [ref1] quando recomendado. Este método, mais lento, irá eliminar alguns dos pontos obscuros e «mágicos» do método 2, mas não prepara bem para um avanço pessoal, porque os códigos obtidos por copiar/colar não serão necessariamente bem compreendidos.
  3. Faz-se o mesmo que no método 3, mas digita-se manualmente todos os códigos. É obviamente mais demorado e mais trabalhoso, mas muito eficaz. Para digitar os códigos, é necessário lê-los, o que implica prestar atenção ao código e, por conseguinte, dar início a uma compreensão do mesmo. Esta transcrição manual raramente se fará sem erros de transcrição. Esses erros, que serão assinalados pelas várias ferramentas do Eclipse, levarão o leitor a questionar-se sobre o código que escreveu e, assim, a compreendê-lo melhor.

Este documento retoma grande parte de um artigo publicado em janeiro de 2005 intitulado «Desenvolvimento web em Java com o Eclipse e o Tomcat» e disponível na URL [http://tahe.developpez.com/java/eclipse/]. As novidades em relação a esse artigo são as seguintes:

  • a utilização do plugin WTP do Eclipse para o desenvolvimento de aplicações web,
  • uma reorganização do documento para dar ênfase à arquitetura MVC de três camadas, que mal tinha sido abordada no documento inicial,
  • um exemplo de aplicação web MVC de 3 camadas que utiliza os dados de um SGBD.

Uma aplicação web de 3 camadas tem a seguinte estrutura:

  • a camada [dao] encarrega-se do acesso aos dados, na maioria das vezes dados persistentes dentro de um SGBD. Mas também podem ser dados provenientes de sensores, da rede, etc.
  • A camada [metier] implementa os algoritmos «de negócio» da aplicação. Esta camada é independente de qualquer tipo de interface com o utilizador. Assim, deve poder ser utilizada tanto com uma interface de consola, como com uma interface web ou uma interface de cliente avançada. Deve, portanto, poder ser testada fora da interface web e, nomeadamente, com uma interface de consola. É geralmente a camada mais estável da arquitetura. Não se altera se se mudar a interface de utilizador ou a forma de aceder aos dados necessários ao funcionamento da aplicação.
  • a camada [web], que é a interface web que permite ao utilizador controlar a aplicação e receber informações da mesma.

O artigo [http://tahe.developpez.com/java/eclipse/] apresenta apenas exemplos de aplicações web que se limitam exclusivamente à camada [web]. Aqui, apresentamos um exemplo que utiliza as três camadas.