Lequel est le meilleur: Spring MVC ou Struts?


Meilleure réponse

Actuellement dans la pile technologique Java, Spring MVC est en tête et est largement utilisé pour créer des applications Java dentreprise.

Spring MVC est très demandé et mis à jour. Ils publient de temps en temps de nouvelles versions de Spring. La sécurité Spring est lun des meilleurs moyens de protéger une application. Struts est ancien. Mais il existe toujours car la plupart des applications héritées ont été créées en lutilisant. Mais pratiquement aucun développeur ne choisirait Struts pour créer une application aujourdhui.

Votre exigence peut être facilement satisfaite en utilisant: -Spring MVC: pour REST api, modèle client-serveur, Service Oriented Architecure (SOA). -Spring Security: pour sécuriser votre application. -Hibernate ou modèle JDBC Spring. (aller avec Hibernate): pour la gestion de la base de données -MySQL pour la base de données. -JUnit pour les tests unitaires.

Réponse

Le framework Spring se compose dun certain nombre de modules dont lun est MVC Model View Controller sous Web Domain.

Considérez le vue à vol doiseau suivante des modules Spring.

MVC: Vous pouvez voir que le module Web est appelé MVC./Remoting. Ce module comprend tout le code de plaque de chaudière requis pour développer des applications Web. Cela inclut la gestion des requêtes, des méthodes HTTP, des mappages dURL, des résolveurs de vues, des bibliothèques de balises JSP, des sessions. Reportez-vous à 22. Framework Web MVC pour plus de détails.

IOC – Inversion de contrôle: « Ne nous appelez pas, nous vous appellerons »

Voici la partie la plus délicate. Comme vous pouvez le voir, IOC ne fait pas partie du diagramme de module ci-dessus. IOC fait partie du module Spring Core avec beaucoup dautres choses.

IOC est au-dessus et au-delà de Spring. Cest un principe de conception orienté objet qui réduit la dépendance et augmente la modularité et rend le programme extensible.

Comme le dit Martin Fowler, linversion de contrôle est le principe où le flux de contrôle dun programme est inversé: au lieu du programmeur contrôlant le flux dun programme, les sources externes (framework, services, autres composants) en prennent le contrôle.

IOC résout les problèmes de conception suivants.

  • Découpler lexécution dune tâche à partir de limplémentation.
  • Pour concentrer un module sur la tâche pour laquelle il est conçu.
  • Pour libérer les modules des hypothèses sur la façon dont les autres systèmes font ce quils font et sappuient plutôt sur div id = « 50eb51719f »>

c ontracts.

  • Pour éviter les effets secondaires lors du remplacement dun module.
  • Venir à ce quest le printemps IOC.

    Spring IOC est le moyen de mettre en œuvre IOC au printemps. La COI peut être réalisée de plusieurs manières. La documentation dit –

    Cest un processus par lequel les objets définissent leurs dépendances, cest-à-dire les autres objets avec lesquels ils travaillent, uniquement via des arguments de constructeur, des arguments à une méthode dusine ou des propriétés définies sur linstance dobjet après sa construction ou son retour dune méthode de fabrique. Le conteneur injecte ensuite ces dépendances lors de la création du bean. Ce processus est fondamentalement linverse, doù le nom Inversion of Control (IoC), du bean contrôlant lui-même linstanciation ou lemplacement de ses dépendances en utilisant la construction directe de classes, ou un mécanisme tel que le modèle Service Locator .

    In Spring org.springframework.beans et org.springframework.context contient limplémentation dIOC appelée Spring IOC Container. Linterface org.springframework.context.ApplicationContext représente le conteneur Spring IoC et est responsable de linstanciation, de la configuration et de lassemblage des objets (au printemps, les objets sont des Beans).

    Lire 7. Le conteneur IoC et BeanFactory (Spring Framework 4.3.7.RELEASE API) pour plus de détails.

    Laisser un commentaire

    Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *