Skip to content

4. Conclusão

Vamos relembrar o que queríamos fazer. Queríamos construir a aplicação web MVC com as seguintes três camadas:

  • o modelo já estava pronto. Ele foi utilizado da mesma forma pelas três soluções propostas
  • Como a independência das camadas foi rigorosamente respeitada, a camada [web] pôde ser implementada de três maneiras diferentes sem alterar o modelo. Trabalhamos apenas na camada [web].
  • As soluções são semelhantes. Enquanto na primeira solução tínhamos um único servlet com um método para cada ação a ser processada, nas outras duas soluções também temos um único servlet, mas livre dos métodos de processamento das ações, cujo tratamento agora é garantido por classes separadas. O papel dessas classes era idêntico ao dos métodos da primeira solução.
  • O uso de [Spring] nesta aplicação nos permite escolher as classes de implementação das interfaces Java das camadas [domain] e [dao]. Essas classes de implementação poderiam ser alteradas em uma camada, sem qualquer impacto nas outras camadas. Apenas o arquivo de configuração do Spring precisaria ser alterado. Assim, a camada [dao], aqui implementada pela ferramenta [sqlMap], poderia ser implementada pela ferramenta [Hibernate]. Isso afetaria a camada [dao], mas não afetaria de forma alguma as camadas [web] e [domain].