Diferença entre Struts e Struts2

Diferença entre Struts e Struts2
Diferença entre Struts e Struts2

Vídeo: Diferença entre Struts e Struts2

Vídeo: Diferença entre Struts e Struts2
Vídeo: A DIFERENÇA ENTRE AS MEMÓRIAS INTERNA E RAM 2024, Julho
Anonim

Struts vs Struts2

Struts (também conhecido como Apache Struts ou Struts 1) é uma estrutura de código aberto multiplataforma escrita em Java, destinada ao desenvolvimento de aplicativos Web Java EE. Foi uma das estruturas iniciais de aplicativos da Web Java EE. Mas alguns anos depois, o Struts2 (ou Struts versão 2) chegou, e era uma estrutura de aplicativo da Web completamente diferente e altamente aprimorada. Ele abordou poucas questões que foram percebidas como deficiências na versão inicial. Agora, o Struts2 está sendo muito usado para desenvolver aplicativos Java EE no mundo.

O que é Struts?

Struts (Struts 1) foi um dos frameworks iniciais de aplicações web para o desenvolvimento de aplicações web Java EE. O framework Struts incentiva o uso da arquitetura MVC (Model-View-Controller). É uma extensão da API Java Servlet. Craig McClanahan é o criador original do Struts. Inicialmente era conhecido como Jakaratha Struts e foi mantido sob o Projeto Jakarta da Apache Software Foundation. É lançado sob a licença Apache 2.0. A estrutura do Struts é chamada de estrutura baseada em solicitação e é composta de três componentes principais: um manipulador de solicitação, um manipulador de resposta e uma biblioteca de tags. O URI padrão (Uniform Resource Identifier) é mapeado para um manipulador de solicitação. O manipulador de resposta é responsável por transferir o controle. Para criar aplicativos interativos com formulários, os recursos oferecidos pela biblioteca de tags podem ser utilizados. Struts suportam aplicações REST e várias tecnologias como SOAP, AJAX, etc.

O que é Struts2?

A estrutura Struts foi percebida como contendo certas limitações (principalmente a f alta de separação entre a camada de apresentação, a camada de manipulação de requisições e o modelo) pelos desenvolvedores Java EE da época e, consequentemente, alguns anos depois, o Struts2 chegou. Na verdade, o Struts2 era completamente diferente do Struts. Na verdade, eles nem compartilhavam a mesma base de código porque o Struts2 foi simplesmente o resultado de renomear o framework WebWork 2.2 (ou seja, as comunidades WebWork e Struts que trabalharam separadamente por algum tempo acabaram se unindo para criar o Struts2). Sua versão estável atual é a versão 2.2.3, lançada em maio de 2011.

Qual é a diferença entre Struts e Struts2?

Um dos muitos problemas do framework Struts era a necessidade de programação para abstrair classes ao invés de interfaces. Isso foi resolvido pelo framework Struts2. Por exemplo, a estrutura do Struts exigia que as classes de ação fossem estendidas das classes base abstratas, mas as ações do Struts2 podem implementar uma interface de ação. Devido às diferenças no modelo de encadeamento entre as duas versões, problemas de segurança de encadeamento que surgiram no framework Struts em relação aos objetos Action não ocorrem no framework Struts2. O motivo é que os objetos Action do Struts2 são instanciados para cada solicitação, enquanto uma estrutura Action in Struts tem apenas uma instância para lidar com todas as solicitações dessa ação. Ao contrário da estrutura Actions in Struts, as Ações Struts2 não dependem da API Servlet.

A testabilidade do framework Struts2 é comparativamente maior do que o framework Struts. Você pode testar as Ações do Struts2 simplesmente seguindo os três passos: instanciação, configuração de propriedades e invocação de métodos. A coleta de entrada é mais fácil no framework Struts2, pois as propriedades Action são usadas como propriedades de entrada, sem ter que manter um segundo objeto de entrada. Além do suporte para integração JSTL (que está presente no Struts), o framework Struts2 pode usar OGNL (Object Graph Notation Language) mais poderoso e expressivo. Para conversão de tipo, Strut e Strut2 usam Commons-Beanutils e OGNL, respectivamente. Devido a essas melhorias, o framework Struts2 é considerado um framework altamente maduro e muito popular entre os programadores Java EE. Por outro lado, o framework Struts agora é considerado obsoleto.

Recomendado: