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 seções fazem referência a esse artigo. Este documento será doravante referido como [ref1].


Este documento pode ser utilizado de diversas maneiras:

  1. instala-se as ferramentas, baixa-se os códigos do site deste documento e realiza-se os testes propostos. Um iniciante não tirará proveito algum desse método. Um desenvolvedor experiente, por sua vez, pode fazê-lo, caso esteja interessado apenas em testar o ambiente de desenvolvimento Eclipse / WTP.
  1. instala-se as ferramentas, segue-se o documento e realiza-se os testes propostos copiando e colando a partir deste documento. Não se lê o documento [ref1]. Ao proceder dessa forma, começaremos a adquirir os fundamentos do desenvolvimento web, mas alguns pontos permanecerão obscuros ou misteriosos. Esse é um método viável se quisermos avançar rapidamente, com a intenção de nos aprofundarmos apenas mais tarde, ao escrever um aplicativo pessoal e, talvez, com outro documento de referência que não seja o [ref1].
  2. Fazemos o mesmo que no método 2, mas lemos o [ref1] quando for recomendado. Esse método, mais lento, eliminará alguns dos pontos obscuros e “mágicos” do método 2, mas não prepara bem para um desdobramento pessoal, pois 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 trabalhoso, mas muito eficaz. Para digitar os códigos, é preciso lê-los, o que exige atenção ao código e, por consequência, o início de uma compreensão. Essa transcrição manual raramente ocorrerá sem erros de digitação. Esses erros, que serão sinalizados pelas diversas ferramentas do Eclipse, levarão o leitor a questionar o código que escreveu e, assim, a compreendê-lo melhor.

Este documento retoma boa parte de um artigo publicado em janeiro de 2005 intitulado “Desenvolvimento web em Java com Eclipse e Tomcat” e disponível no URL [http://tahe.developpez.com/java/eclipse/]. As contribuições em relação a esse documento são as seguintes:

  • o uso do plugin WTP do Eclipse para o desenvolvimento de aplicativos web,
  • uma reorganização do documento para enfatizar a arquitetura MVC de três camadas, que mal foi abordada no documento original,
  • um exemplo de aplicativo web MVC de três camadas utilizando os dados de um SGBD.

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

  • a camada [dao] é responsável pelo 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. Essa camada é independente de qualquer tipo de interface com o usuário. Assim, ela deve ser utilizável tanto com uma interface de console quanto com uma interface web ou uma interface de cliente avançada. Portanto, deve poder ser testada fora da interface web e, em particular, com uma interface de console. Geralmente, é a camada mais estável da arquitetura. Ela não se altera se a interface do usuário for modificada ou se a forma de acesso aos dados necessários ao funcionamento da aplicação for alterada.
  • a camada [web], que é a interface web que permite ao usuário controlar a aplicação e receber informações dela.

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