Différence entre Struts Struts 1 et 2?
J'avais été en utilisant struts 2, mais pour quelques raisons, je suis en déplacement (à l'arrière) à Struts 1 . Je voudrais savoir de grandes diffrences entre eux comme sur programatic des disponibilités et des flux généralistes.
Je vous souhaite de passer par les références ollahero.com/2011/09/15/struts1-vs-struts2 java-samples.com/showtutorial.php?tutorialid=200
J'espère que la seule raison pour laquelle vous allez de nouveau à Struts 1 est parce que votre entreprise est-ce qui vous--il y a aucun, c'est une option préférée à partir d'une technique/point de vue de productivité.
d'accord avec vous depuis que j'ai moi-même pouvez voir la raison d'aller pour struts2 de struts1 mais pas vice-versa.
"J'avais été en utilisant Windows XP, mais pour quelques raisons, je suis en déplacement (à l'arrière) pour Windows 3.1. Je voudrais savoir de grandes différences entre eux..."
Oui,je sais Struts 2 est plus puissant que Struts 1, mais le projet que j'ai eu, est en Struts 1. c'est pourquoi je viens de regarder pour differences....@Steven qu'est-Ce que cela..???
J'espère que la seule raison pour laquelle vous allez de nouveau à Struts 1 est parce que votre entreprise est-ce qui vous--il y a aucun, c'est une option préférée à partir d'une technique/point de vue de productivité.
d'accord avec vous depuis que j'ai moi-même pouvez voir la raison d'aller pour struts2 de struts1 mais pas vice-versa.
"J'avais été en utilisant Windows XP, mais pour quelques raisons, je suis en déplacement (à l'arrière) pour Windows 3.1. Je voudrais savoir de grandes différences entre eux..."
Oui,je sais Struts 2 est plus puissant que Struts 1, mais le projet que j'ai eu, est en Struts 1. c'est pourquoi je viens de regarder pour differences....@Steven qu'est-Ce que cela..???
OriginalL'auteur Nils | 2011-11-04
Vous devez vous connecter pour publier un commentaire.
Dans http://www.java-samples.com vous pouvez trouver un moyen rapide et complète réponse. En d'autres mots, si vous le pouvez, oubliez les Boudins et utiliser uniquement Struts2...
C'est le tableau de comparaison de la Programmation des Tutoriels du site, mentionné ci-dessus:
La Fin De Vie Struts 1 version a été lancée en décembre 2008 et est la version 1.3.10. Vous pouvez encore le faire et continuera de fonctionner, mais il n'y a pas de soutien ou de développement. Vous êtes sur votre propre.
OriginalL'auteur Costis Aivalis
Laissez-nous voir le composant et les différences fonctionnelles entre struts 1.x et struts 2.x
Différences Fonctionnelles
OriginalL'auteur Ashwini
Comparaison de Struts 1 et 2 par les créateurs de Struts (Apache software foundation)
La comparaison de Struts 1 et Struts 2
Voici le contenu disponible sur le mentionnés ci-dessus lien, au cas où si ils décident de changer le lien ou supprimer la page dans l'avenir.
Classes D'Action
Nécessite des actions classes d'étendre une classe de base abstraite. Un problème commun dans Struts 1, c'est la programmation pour les classes abstraites au lieu d'interfaces.
Action peut mettre en œuvre une Action de l'interface, le long de avec d'autres interfaces pour activer l'option et de services personnalisés. Struts 2 fournit une base ActionSupport classe pour mettre en œuvre des interfaces couramment utilisés. Certes, l'Action de l'interface est pas nécessaire. Tout POJO objet avec une exécution de signature peut être utilisé comme un Struts 2 l'Action de l'objet.
Modèle De Thread
Actions sont des singletons et doit être thread-safe puisqu'il n'y aura qu'une seule instance d'une classe pour gérer toutes les demandes pour cette Action. Le singleton stratégie impose des restrictions sur ce qui peut être fait avec Struts 1 Actions et nécessite des soins supplémentaires pour se développer. Ressources pour l'Action doit être thread-safe ou synchronisé.
Action des objets sont instanciés pour chaque demande, donc il n'y a pas de thread questions de sécurité. (Dans la pratique, des conteneurs de servlet générer beaucoup de jeter des objets par la demande, et un plus d'objet n'est pas d'imposer une amende de la performance ou de l'impact de garbage collection).
Servlet Dépendance
Actions ont des dépendances sur la servlet API depuis le HttpServletRequest et HttpServletResponse est passé à la méthode execute lors de l'invocation d'une Action.
Actions ne sont pas couplé à un conteneur. Le plus souvent les contextes de servlet sont représentés comme de simples Cartes, permettant d'Actions à être testés séparément. Struts 2 Actions peuvent toujours accéder à l'original de la demande et la réponse, si nécessaire. Cependant, d'autres éléments architecturaux de réduire ou d'éliminer le besoin d'accéder à la HttpServetRequest ou HttpServletResponse directement.
Testabilité
Un obstacle majeur pour les tests de Struts 1 Actions est que la méthode execute expose la Servlet API. Une extension du tiers, Struts cas de test, propose un ensemble d'objet fantaisie pour Struts 1.
prend en charge la création de différents cycles de vie par Action de base via l'Intercepteur des Piles. Personnalisé des piles peut être créé et utilisé avec différentes Actions, en tant que de besoin.
Struts 2 Actions peuvent être testées par l'instanciation de l'Action, la définition des propriétés, et de l'invocation de méthodes. L'Injection de dépendance soutien a également fait des tests plus simples.
La Récolte D'Entrée
Utilise un objet ActionForm pour capturer d'entrée. Comme les Actions, tous les ActionForms doit étendre une classe de base.Depuis d'autres JavaBeans ne peut pas être utilisé comme ActionForms, les développeurs créent souvent redondants classes de capture d'entrée.
DynaBeans peut être utilisé comme une alternative à la création conventionnelle ActionForm classes, mais, ici aussi, les développeurs peuvent être redescribing existant JavaBeans.
Utilise les propriétés de l'Action en tant que propriétés d'entrée, éliminant le besoin d'une deuxième entrée de l'objet.Propriétés d'entrée peut être de riches types d'objets qui peuvent avoir leurs propres propriétés. Les propriétés d'Action peut être consulté à partir de la page web via les taglibs. Struts 2 prend également en charge l'ActionForm modèle, ainsi que des POJO forme des objets et des POJO Actions. Riche de types d'objets, y compris d'affaires ou des objets du domaine,peut être utilisé comme entrée/sortie des objets. Le ModelDriven fonctionnalité simplifie taglb des références à des POJO objets d'entrée.
s'Intègre avec JSTL, de sorte qu'il utilise la JSTL EL. La EL a de base de l'objet graphique de la traversée, mais relativement faible de la collection de propriété indexée et de soutien.
Pouvez utiliser JSTL, mais le framework prend également en charge un plus puissant et flexible de l'expression langage appelé "Graphe d'Objet de la Notation de la Langue" (OGNL).
Utilise la norme JSP mécanisme de liaison des objets dans le contexte de la page pour y accéder.
Utilise un "ValueStack" de la technologie, de sorte que les taglibs peut accéder aux valeurs sans couplage votre point de vue sur le type d'objet qu'il est rendu. Le ValueStack stratégie permet de réutiliser des points de vue à travers une gamme de types qui peuvent avoir le même nom de propriété, mais différents types de propriété.
ActionForm propriétés sont généralement toutes les Chaînes. Struts 1 utilise des Communes-Beanutils pour la conversion de type. Les convertisseurs sont par classe, et ne sont pas configurables par exemple.
Utilise OGNL pour la conversion de type. Le cadre inclut des convertisseurs de base commun et les types d'objets et primitives.
prend en charge la validation manuelle par l'intermédiaire d'une méthode de validation sur l'ActionForm, ou par le biais d'une extension de l'Commons Validator. Les Classes peuvent avoir différentes validation des contextes de la même classe, mais ne peut pas la chaîne de validations sur des sous-objets.
Supporte manuel de validation par l'intermédiaire de la validation de la méthode et de la XWork cadre de Validation. Le Xwork Cadre de Validation prend en charge le chaînage de la validation dans les sous-propriétés en utilisant les validations définies pour les propriétés de type de classe et la validation de contexte.
Supporte Demande distincte de Processeurs (cycle de vie) pour chaque module, mais toutes les Actions dans le module doivent partager le même cycle de vie.
prend en charge la création de différents cycles de vie par Action de base via l'Intercepteur des Piles. Personnalisé des piles peut être créé et utilisé avec différentes Actions, en tant que de besoin.
OriginalL'auteur Jeewantha Samaraweera
quelles sont les raisons qui vous ont poussé à revenir à struts1 qui n'est plus dans une phase active de développement?
peut-être quelqu'un pourra vous aider dans la résolution de vos raisons concernant les différences passer par le fil de discussion suivant
Struts2 Vs Struts1
je vous conseille aussi de recherche pour plus de détails. ce que je sais Struts2 de conception et de flux de travail est intégralement différent de struts1 et il a été développé à prendre en compte aussi les limites struts1 ont.
OriginalL'auteur Umesh Awasthi