¿Para qué se utilizan la estructura de puntales y la estructura de resortes?
El marco Spring es una arquitectura en capas que consta de siete módulos bien definidos, que se construyen en el contenedor principal. El contenedor principal define cómo crear, configurar y administrar beans, como se muestra en la Figura 1.
Cada módulo (o componente) que compone el marco Spring puede existir de forma independiente o implementarse junto con uno o más módulos. Las funciones de cada módulo son las siguientes:
Contenedor principal: el contenedor principal proporciona las funciones básicas del marco Spring. El componente principal del contenedor principal es BeanFactory, que es una implementación del patrón Factory. BeanFactory utiliza el patrón de Inversión de Control (IOC) para separar la configuración de una aplicación y las especificaciones de dependencia del código de la aplicación real.
Contexto Spring: El contexto Spring incluye servicios empresariales como JNDI, EJB, correo electrónico, internacionalización, validación y capacidades de programación.
Spring AOP: el módulo Spring AOP integra capacidades de programación orientada a aspectos directamente en el marco Spring a través de capacidades de gestión de configuración. El módulo Spring AOP proporciona servicios de gestión de transacciones para objetos en aplicaciones basadas en Spring. Al utilizar Spring AOP, la gestión de transacciones declarativas se puede integrar en aplicaciones sin depender de componentes EJB.
Spring DAO: la capa de abstracción JDBC DAO proporciona una jerarquía de excepciones significativa que se puede utilizar para gestionar el manejo de excepciones y los mensajes de error generados por diferentes proveedores de bases de datos. La jerarquía de excepciones simplifica el manejo de errores y reduce en gran medida la cantidad de código de excepción que debe escribirse (por ejemplo, abrir y cerrar conexiones). Las excepciones Spring DAO para JDBC siguen la jerarquía de excepciones DAO común.
Spring ORM: el marco Spring se conecta a múltiples marcos ORM, proporcionando herramientas relacionales de objetos para ORM, incluidos JDO, Hibernate e iBatis SQL Map, todos los cuales siguen las jerarquías de excepciones DAO y transacciones comunes de Spring.
Módulo Spring Web: el módulo Web Context se basa en el módulo Application Context, que proporciona contexto para aplicaciones basadas en web. Por lo tanto, Spring Framework admite la integración con Jakarta Struts. El módulo web también simplifica el manejo de solicitudes de varias partes y la vinculación de parámetros de solicitud a objetos de dominio.
Spring MVC Framework: El framework MVC es una implementación MVC con todas las funciones para crear aplicaciones web. El marco MVC es altamente configurable a través de interfaces estratégicas y MVC admite múltiples tecnologías de visualización, incluidas JSP, Velocity, Tiles, iText y POI.
La funcionalidad de Spring Framework se puede utilizar con cualquier servidor J2EE y la mayor parte de la funcionalidad es adecuada para entornos no administrados.
El punto central de Spring es que admite objetos comerciales y de acceso a datos reutilizables que no están vinculados a servicios J2EE específicos. Por supuesto, estos objetos se pueden reutilizar en diferentes entornos J2EE (Web o EJB), aplicaciones independientes y entornos de prueba.