Maison  >  Article  >  Java  >  Comparez les différences d'utilisation entre struts2 et spring MVC en Java

Comparez les différences d'utilisation entre struts2 et spring MVC en Java

巴扎黑
巴扎黑original
2017-09-06 09:39:051213parcourir

Cet article présente principalement la différence entre struts2 et spring MVC en Java. Il est très bon et a une valeur de référence. Les amis qui en ont besoin peuvent s'y référer

1. Une classe correspond à un contexte de requête, SpringMVC est une interception au niveau de la méthode, une méthode correspond à un contexte de requête et la méthode correspond également à une URL, donc à partir de l'architecture elle-même, SpringMVC peut facilement implémenter une URL reposante, tandis que l'architecture struts2 est difficile à implémenter car Une méthode d'Action dans Struts2 peut correspondre à une URL, mais ses attributs de classe sont partagés par toutes les méthodes, ce qui rend impossible l'utilisation d'annotations ou d'autres méthodes pour identifier sa méthode.

2. Les méthodes SpringMVC sont fondamentalement indépendantes et ont un accès exclusif aux données de réponse à la demande. Les données de la demande sont obtenues via des paramètres et les résultats du traitement sont renvoyés au framework via ModelMap.

3. Puisque Struts2 doit encapsuler chaque requête, encapsuler les variables du cycle de vie du servlet telles que la requête et la session dans Maps pour une utilisation par chaque action et garantir la sécurité des threads, donc en principe, cela consomme plus de mémoire.

4. En termes de mécanisme d'implémentation de l'intercepteur, Struts2 possède son propre mécanisme d'intercepteur, tandis que SpringMVC utilise une méthode AOP indépendante. Cela se traduit par une quantité de fichiers de configuration de Struts2 supérieure à celle de SpringMVC.

5. L'entrée de SpringMVC est un servlet, tandis que Struts2 est un filtre (il convient de souligner ici que le filtre et le servlet sont différents. Dans le passé, le filtre était considéré comme un type spécial de servlet), ce qui conduit à des mécanismes différents des deux, implique ici la différence entre servlet et filtre.

6. SpringMVC intègre Ajax, ce qui est très pratique à utiliser. Il peut être implémenté avec une seule annotation @ResponseBody, puis renvoie directement le texte de la réponse. L'intercepteur Struts2 intègre Ajax, qui est généralement requis lors du traitement. en action Installer des plug-ins ou écrire votre propre code pour les intégrer est relativement peu pratique à utiliser.

7. La vérification SpringMVC prend en charge JSR303, qui est relativement plus flexible et plus pratique à gérer, tandis que la vérification Struts2 est plus lourde et semble trop déroutante.

8. Spring MVC et Spring sont transparents. La gestion et la sécurité de ce projet sont également supérieures à celles de Struts2 (bien sûr, Struts2 peut également obtenir le même effet que SpringMVC via différentes structures de répertoires et configurations associées, mais de nombreux endroits nécessitent une configuration XML).

9. En termes d'idées de conception, Struts2 est plus conforme aux idées de programmation POO, tandis que SpringMVC est plus prudent et développe les servlets.

10. Les performances de SpringMVC sont supérieures à celles de Struts2.

11. SpringMVC peut être considéré comme ayant une configuration 100 % nulle.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn