/ / ¿Son los conflictos de conexión automática la inyección de dependencia de primavera - java, primavera

Los conflictos de autoenvío son la inyección de dependencia de primavera: java, primavera

Estoy un poco confundido sobre el auto cableado y la inyección de dependencia de primavera.

inyección de dependencia de primavera le permite eliminarcualquier dependencia específica una clase puede tener en otras clases o interfaces de terceros, y cargar estas dependencias en la clase en el momento de la construcción.

Pero mientras usamos la anotación Autowired, estamos escribiendo mediante programación el nombre de la interfaz o el nombre de la clase en la clase java para inyectar bean.

@Autowired
public final Interface object;

¿No es esto conflictivo la dependencia de primavera?¿inyección? Porque si estamos definiendo bean en XML, podemos cambiarlo en cualquier momento sin cambiar el código Java real. Pero usando la anotación tenemos que cambiar el código java.

Respuestas

0 para la respuesta № 1

En inyección de dependencia, la primavera requiere al menosun contrato (Interfaz Java) en la clase y puede cambiar dinámicamente la implementación en tiempo de ejecución con XML o una anotación basada en Java. Incluso si se realiza a través de XML, debemos proporcionar la Interfaz con los constructores, de modo que el cableado del bean automáticamente también necesita esa variable de clase de interfaz.

Pero como dijiste, para poner en Java Annotación basadaes necesario tener acceso al código fuente y este es un tipo de inconveniente principal con Annotation. Esto viene para AOP también. Para hacer de una clase un Aspecto, necesitas tener acceso al código fuente.