Diseño de la interfaz central del contenedor Spring IOC (3)

Diseño de interfaz del contenedor Spring IOC

La siguiente es una introducción detallada a la relación de interfaz en la figura.

  • Desde la interfaz BeanFactorya HierarchicalBeanFactoryy, a continuación ConfigurableBeanFactoryes un importante BeanFactorycamino diseño, este diseño de la interfaz en la trayectoria BeanFactorydefine especificaciones contenedores básicos COI. En esta definición de interfaz, getBean()se incluyen los métodos básicos de dicho contenedor IOC. Una vez que la HierarchicalBeanFactoryinterfaz hereda la BeanFactoryinterfaz, la getParentBeanFactory()función de interfaz agregada habilita BeanFactoryla función de administración del contenedor IOC principal. La siguiente ConfigurableBeanFactoryinterfaz define principalmente algunas BeanFactoryfunciones de configuración, como la setParentBeanFactory()configuración del contenedor IOC principal, la addBeanPostProcessor()configuración del procesamiento posterior del bean, etc. La superposición de estos diseños de interfaz define las BeanFactoryfunciones básicas de un contenedor IOC simple.
  • El segundo diseño de la interfaz principal del ApplicationContextcontexto de aplicación como el diseño de la interfaz principal, el diseño de interfaces están involucrados aquí, de BeanFactoryla ListableBeanFactorycontinuación ApplicationContexty luego usamos WebApplicationContexto ConfigurableApplicationContextinterfaz. Nuestro contexto de aplicación de uso común es básicamente la realización de ConfigurableApplicationContexto WebApplicationContext. En este sistema de interfaz, ListableBeanFactoryy HierarchicalBeanFactoryconectado a una interfaz, BeanFactoryla definición de interfaz de la conexión y ApplicationContextla definición de interfaz. En el ListableBeanFactoryrefinado interfaz mucho BeanFactoryde funciones de interfaz, tales como la definición del String[] getBeanDefinitionNames()método de interfaz, HierarchicalBeanFactorycomo ya se mencionó es aumentar los padres funcionalidad COI, ApplicationContextinterfaz, a través de la herencia MessageSource, ResourceLoader, ApplicationEventPublisherla interfaz, la BeanFactorybase de recipientes simples COI en la adición de una serie de Soporte para funciones avanzadas de contenedores.
  • La relación de interfaz principal implicada aquí, y el contenedor IOC específico se implementa bajo este sistema de interfaz, por ejemplo DefaultListableBeanFactory, la implementación de este contenedor IOC básico se realiza ConfigurableListableBeanFactory, convirtiéndose así en un contenedor IOC simple. Al igual que otros contenedores IOC, por ejemplo XmlBeanFactory, todos se basan DefaultListableBeanFactoryen extensiones, y lo mismo ApplicationContextocurre con la implementación.
  • Este sistema se basa en la interfaz BeanFactoryy ApplicationContextel núcleo. Y BeanFactoryes la interfaz más sencilla de contenedores COI en ApplicationContextel diseño, por un lado, se puede ver que se hereda BeanFactoryla interfaz en el sistema ListableBeanFactory, AutowrieCapableBeanFactory, HierarchicalBeanFactoryy otra BeanFactoryinterfaz con las BeanFactoryfunciones básicas de los envases de la COI; por el contrario, mediante la integración MessageSource, ResourceLoader, ApplicationEventPublisheréstos Interfaz, BeanFactorypara ApplicationContextdar características de contenedor IOC más avanzadas. Para ApplicationContextla WebApplicationContextinterfaz utilizada en el entorno web también está diseñado .

El diseño del enlace central del contenedor IOC es el siguiente:
Enlace central del contenedor de COI

41 artículos originales publicados · Me gustaron 14 · Visitantes más de 10,000

Supongo que te gusta

Origin blog.csdn.net/Yunwei_Zheng/article/details/104844280
Recomendado
Clasificación