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 »>