La mejor respuesta
Actualmente en la pila de tecnología Java, Spring MVC está en la cima y se usa ampliamente para crear aplicaciones empresariales Java.
Spring MVC tiene una gran demanda y está actualizado. Lanzan nuevas versiones de Spring de vez en cuando. Spring Security es una de las mejores formas de proteger una aplicación. Struts es antiguo. Pero todavía existe, ya que la mayoría de las aplicaciones heredadas se crearon con él. Pero casi ningún desarrollador elegiría Struts para construir una aplicación en la actualidad.
Su requisito puede cumplirse fácilmente mediante el uso de: -Spring MVC: para API REST, modelo de servidor cliente, Arquitectura orientada a servicios (SOA). -Spring Security: para proteger su aplicación. -Hibernate o Spring JDBC Template. (vaya con Hibernate): para el manejo de la base de datos -MySQL para la base de datos. -JUnit para pruebas unitarias.
Respuesta
El marco Spring consta de varios módulos, uno de los cuales es MVC Model View Controller en Web Domain.
Considere el siguiendo la vista de pájaro de los módulos Spring.
MVC: Puede ver que el módulo web se denomina MVC./Remoting. Este módulo consta de todo el código de placa de caldera necesario para desarrollar aplicaciones web. Esto incluye el manejo de solicitudes, métodos HTTP, asignaciones de URL, resolutores de vistas, bibliotecas de etiquetas JSP, sesiones. Consulte 22. Web MVC framework para obtener más detalles.
IOC – Inversión de control: “No nos llames, te llamaremos”
Aquí viene la parte complicada. Como puede ver, IOC no forma parte del diagrama de módulo anterior. IOC es parte del módulo Spring Core junto con muchas otras cosas.
IOC está más allá de Spring. Es un principio de diseño orientado a objetos que reduce la dependencia y aumenta la modularidad y hace que el programa sea extensible.
Como dice Martin Fowler, la inversión de control es el principio donde el flujo de control de un programa se invierte: en lugar de que el programador controle el flujo de un programa, las fuentes externas (framework, servicios, otros componentes) toman el control de él.
IOC resuelve los siguientes problemas de diseño.
- Para desacoplar la ejecución de una tarea de la implementación.
- Para enfocar un módulo en la tarea para la que está diseñado.
- Para liberar módulos de suposiciones sobre cómo otros sistemas hacen lo que hacen y, en cambio, se basan en div id = «50eb51719f»>