Suplemento 1: Comprensión de Spring Framework y IOC AOP

Tabla de contenido:

Marco de primavera

Spring IoC

Primavera AOP

 

 

Marco de primavera

Spring Core: Básico, se puede decir que todas las demás funciones de Spring deben depender de esta biblioteca.

           Proporciona principalmente la función de inyección de dependencia de Ioc

Spring Aspects: este módulo proporciona soporte para la integración con AspectJ

Spring AOP: proporciona una implementación de programación orientada a aspectos

Spring JDBC: conexión de base de datos Java

Spring JMS: servicio de mensajes Java

Spring ORM: se utiliza para admitir herramientas ORM como Hibernate

Spring Web: brinde soporte para la creación de aplicaciones web

Spring Test: proporciona soporte para pruebas JUnit y TestNG

 

 

 

 

 

 

 

Que es AspectJ

AspectJ es un framework orientado a aspectos, define algunas gramáticas de AOP y tiene un generador de bytecode especial para generar archivos de clase que cumplen con la especificación de Java.

 

El modo Object Relational Mapping (ORM) es una tecnología para resolver el desajuste entre las bases de datos relacionales y orientadas a objetos.

ORM proporciona otro modo para implementar la capa de persistencia. Utiliza metadatos de mapeo para describir el mapeo de relaciones de objetos, de modo que el middleware ORM puede actuar como un puente entre la capa de lógica empresarial y la capa de base de datos de cualquier aplicación.

https://blog.csdn.net/Andy_ayu/article/details/78464020

 

¿Qué es O / X Mapper?  

 

Una nueva característica de Spring 3.0 es O / X Mapper. El concepto de mapeador O / X no es nuevo, O significa Objeto y X significa XML. Su propósito es realizar conversiones entre un objeto Java (casi siempre un antiguo objeto Java simple, o POJO para abreviar) y un documento XML.

 

Por ejemplo, puede tener un bean simple con varias propiedades y su empresa necesita convertir ese objeto Java en un documento XML. Spring's O / X Mapper puede resolver ese problema por usted. Si al revés, necesita convertir un documento XML en un simple bean Java, Spring's O / X Mapper también puede hacerlo.

https://www.cnblogs.com/xuxiuxiu/p/6653060.html

 

¿Qué es Spring Portlet?

 

Para JSR-168 Portlet, Spring también proporciona un marco MVC similar. La principal diferencia entre el flujo de trabajo de portlet y el servlet es que el procesamiento de solicitudes de portlet tiene dos etapas únicas: etapa de acción y etapa de procesamiento. Durante la fase de acción, habrá un cambio de datos "en segundo plano" o un código de acción, que solo se ejecutará una vez. La fase de visualización producirá el contenido de visualización que el usuario ve cada vez que actualiza. Durante todo el procesamiento de una sola solicitud, la fase de acción solo se ejecutará una vez, mientras que la fase de visualización puede ejecutarse varias veces. Esto requiere una capa clara entre las actividades que cambian el estado persistente del sistema y las actividades que producen el contenido mostrado. El marco Spring Portlet MVC refleja esto bien.

https://www.ibm.com/developerworks/cn/java/j-lo-spring2-portal/

https://www.coder.work/article/6598242

 

El portal, como una aplicación web, se usa generalmente para proporcionar contenido personalizado, de inicio de sesión único y agregado de varias fuentes de información, y sirve como anfitrión de la capa de presentación del sistema de información.

https://blog.51cto.com/fengbohaishang/989144

 

 

 

Spring IoC

IoC (Inversion of Control) es una idea de diseño, es decir, el control de los objetos creados manualmente en el programa se entrega al framework Spring para su gestión. IoC también se usa en otros idiomas y no es exclusivo de Spring. El contenedor de IoC es el portador que Spring usa para implementar IoC. El contenedor de IoC es en realidad un mapa (clave, valor) y varios objetos se almacenan en el mapa.

El contenedor IoC es como una fábrica, cuando necesitamos crear un objeto, solo necesitamos configurar el archivo de configuración / anotación, sin considerar cómo se crea el objeto.

El proceso de inicialización de Spring IoC:

Por ejemplo:

(1) Hay una interfaz de servicio WelcomeService en la capa de servicio. Generalmente, es a través del servicio WelcomeService = new WelcomeServiceImpl (); para crear una instancia y llamar a:

 

(2) Debido a la diferencia entre el entorno de aplicación real y el entorno de prueba, el WelcomeServiceImpl debe reemplazarse con un MockWelcomeServiceImpl

(3) Veamos cómo implementar el IOC de Spring. En primer lugar, el WelcomeService será administrado por Spring:

<bean name = "WelcomeService" class = "XXX.XXX.XXX.service.impl.WelcomeServiceImpl" />

(4) Luego obtenga el objeto específico a través de Spring IOC en el código comercial:

WelcomeController de clase pública {

    @Autowired

    servicio de WelcomeService privado;

 

    @RequestMapping ("/ bienvenido")

    public String welcome () {

        return service.retrieveWelcomeMessage ();

    }

}

(5) Al realizar la prueba, solo necesita cambiar el archivo de configuración y cambiar la implementación correspondiente de WelcomeService a MockWelcomeServiceImpl:

<bean name = "WelcomeService" class = "XXX.XXX.XXX.service.impl.MockWelcomeServiceImpl" />

 

No hay intrusión en el código comercial de esta manera, y efectivamente se da cuenta de un acoplamiento flexible.

 

Primavera AOP

La AOP (Programación Orientada a Aspectos) puede encapsular la lógica o las responsabilidades (como el procesamiento de transacciones, la gestión de registros, el control de acceso, etc.) que no están relacionadas con el negocio pero son llamadas por los módulos de negocio, para reducir el código repetitivo de el sistema y reducir el inter-módulo El grado de acoplamiento es propicio para la futura escalabilidad y mantenibilidad.

 

AOP, programación orientada a aspectos, es un complemento de OOP. Una frase leída de Internet: este tipo de idea de programación de cortar dinámicamente el código en el método especificado o la ubicación de la clase en tiempo de ejecución es programación orientada a aspectos. Esta es una de las formas que se agregan dinámicamente en tiempo de ejecución. Hay otra forma de cambiar el código a un método o ubicación específicos al compilar el código: este es un método de adición estático.

https://cxis.me/2017/04/12/Spring%E4%B8%ADAOP%E6%A6%82%E5%BF%B5%EF%BC%8C%E5%8E%9F%E7%90% 86% EF% BC% 8C% E5% BA% 94% E7% 94% A8% E4% BB% 8B% E7% BB% 8D /

 

Programación Orientada a Objetos (Programación Orientada a Objetos en Inglés), por lo que también se llama OOP.

https://blog.csdn.net/q932104843/article/details/52298565

Supongo que te gusta

Origin blog.csdn.net/qq_42198024/article/details/107927093
Recomendado
Clasificación