201 votes

Quelle est la différence entre Spring, Struts, Hibernate, JavaServer Faces, Tapestry?

Puis-je savoir quelle est la différence entre :-

  1. Printemps
  2. Jambes de force
  3. Struts 2
  4. Mise en veille prolongée
  5. JavaServer Faces
  6. JavaServer Pages
  7. Tapisserie

Ces technologies/cadre sont complémentaires les uns aux autres ? Ou ils sont des alternatives à l’autre (après que j’ai utilisé l’un d’eux, puis je n’avez pas besoin d’utiliser l’autre) ?

Merci.

267voto

Pascal Thivent Points 295221
  1. Spring est un conteneur IoC (au moins le noyau de Printemps) et est utilisé pour le fil des choses à l'aide de l'injection de dépendance. Spring fournit des services supplémentaires comme la gestion des transactions et une intégration transparente de diverses autres technologies.
  2. Struts est une action basée sur la structure de présentation (mais ne l'utilisez pas pour un nouveau développement).
  3. Struts 2 est une action basée sur la structure de présentation, la version 2 de la ci-dessus (créé à partir d'une fusion de WebWork avec Struts).
  4. Hibernate est un mapping objet-relationnel outil, une persistance du cadre.
  5. JavaServer Faces est basée sur des composants, la structure de présentation.
  6. JavaServer Pages est un point de vue de la technologie utilisée par tout ce qui est mentionné cadre de présentation pour la vue.
  7. La tapisserie est une autre composante de base de la structure de présentation.

Donc, pour résumer:

  • Struts 2, JSF, Tapisserie (et de Guichet, Spring MVC, Rayures) sont des frameworks de présentation. Si vous utilisez l'un d'eux, vous n'utilisez pas un autre.
  • Hibernate est une infrastructure de persistance et est utilisé pour persister des objets Java dans une base de données relationnelle.
  • Le printemps peut être utilisé pour câbler tout cela ensemble et de fournir déclarative, la gestion des transactions.

Je ne veux pas rendre les choses plus confuses, mais note que Java EE 6 fournit moderne, standardisé et très agréable équivalent de ce qui précède cadres: JSF 2.0 et Facelets pour la présentation, JPA 2.0 pour la persistance, l'Injection de Dépendance, etc. Pour un nouveau développement, c'est de l'OMI une sérieuse option, Java EE 6 est une grande pile.

Voir aussi

19voto

Pradip Bhatt Points 197

Généralement...

Hibernate est utilisé pour la manipulation de la base de données de l'opération. Il y a de riche ensemble de fonctionnalités de l'utilitaire de base de données, qui réduisent le nombre de lignes de code. En particulier, vous devez le lire @Annotation de mise en veille prolongée. Il est ORM, de la persistance de la couche.

Spring fournit un ensemble riche de Injectioin de travail basés sur le mécanisme. Actuellement Printemps devenu tellement célèbre. Vous avez également à lire sur le Spring AOP. Il est le pont entre Struts et Hibernate. Principalement Printemps offre ce genre d'utilitaire.

Struts2 fournit de l'action en fonction de la programmation. Il y a de riches ensemble de balises Struts. Vous pouvez l'utiliser. Struts prouve action en fonction de la programmation de sorte que vous devez conserver tous les relavant de contrôle de votre vue.

En Plus de la Tapisserie est différent de JAva. Dans lequel vous avez à gérer .tml (fichier de modèle). Vous devez créer principal 2 fichiers pour toute la classe. L'un est de classe JAVA et un autre est son modèle. Les deux noms sont les mêmes. Tapisserie automatiquement un rapport de classes.

7voto

Srikar Doddi Points 10611

Vous pouvez voir l’aperçu et le classement par vous-même ici. Mise en veille prolongée est un ORM, donc vous pouvez utiliser soit struts + Hiberante ou spring + hibernate pour construire une application web frameworks web différents et beaucoup sont des solutions de rechange à l’autre.

2voto

dipak Points 31

dans la mise en veille prolongée, vous devez dérange pas sur la création de table dans sql et vous devez pas n’oubliez pas de connexion, déclaration élaborées comme que les données sont stockées de façon persistance en base de données... il rend la vie devloper facile

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X