Red de conocimiento informático - Material del sitio web - Al aprender Spring, el tutorial decía que las anotaciones @Resource coinciden según el tipo, pero también se pueden inyectar dos beans del mismo tipo.

Al aprender Spring, el tutorial decía que las anotaciones @Resource coinciden según el tipo, pero también se pueden inyectar dos beans del mismo tipo.

La inyección de anotación @Resource coincide según el método set después del nombre o los atributos agregados directamente después de la anotación. El código específico es el siguiente

@Resource

public void setUserDAO(UserDAO). userDAO) {

this.userDAO = userDAO

}

El código correspondiente es "userDAO"

lt bean id=; "userDAO" class="com.bjsxt.dao.impl.UserDAOImpl"gt;

lt;; nombre de propiedad="daoId" value="2"gt;lt;/propertygt;

lt;/beangt;

Si cambia el método a

@Resource

public void setUserDAO2( UserDAO userDAO) {

this. usuarioDAO = usuarioDAO;

}

o

@Resource(name="userDAO2")

public void setUserDAO (UserDAO userDAO) {

this.userDAO = userDAO

}

Entonces debería corresponder a

lt bean id=; "userDAO2" class ="com.bjsxt.dao.impl.UserDAOImpl"gt;

lt;property name="daoId" value="2"gt;lt;/propertygt;

lt;/beangt;

Entonces, hay dos clases idénticas pero diferentes ID de registro, aún puede aprobarse, puede modificarlo con

lt.property name =" daoId" value="2"gt;lt;/propertygt; El valor será conocido por los resultados de la prueba.