Con una gran comprensión de la lengua vernácula para hablar de la primavera COI, DI de

COI inversión de control
se inicia con la mayoría de los mvc tres términos básicos, el nuevo controlador general en la clase de implementación de servicio, en el servicio en la nueva clase de implementación DAO, las capas son muy estrecho contacto, se acopla con términos profesionales altos, para entender el resorte de acoplamiento, ya no está en la forma de nuevos objetos quieran obtener una instancia, entonces no hay inversión de control dijo vistazo a la inversa, literalmente, sentí que no tome la iniciativa para obtener la instancia del objeto que quiero, y es una forma de pasarme, de hecho, el contenedor COI muelle tiene algo que decir, este recipiente es el archivo de configuración XML, el archivo de configuración se puede configurar de frijol, un grano es equivalente a una clase, puede ser removido del contenedor que desea ejemplos de objetos, tales como los siguientes:

<bean id="person" class="cn.hp.bean.Person"></bean>
public static void main(String[] args) {
	ApplicationContext app = new ClassPathXmlApplicationContext("applicationContext.xml");
	Person person = app.getBean("person",Person.class);
	System.out.println(person);
}

El primer fragmento de código se define en el archivo de configuración, el frijol, es la segunda instancia de la persona objeto adquirido, pero ver el método principal, que no es el objeto de obtener una instancia manualmente Bueno, todavía hay un cierto acoplamiento ah, esta vez para su uso valor de atributo del elemento de inyección;

DI DI
Esta inyección se administra clase valor de atributo, dijimos antes de la inversión de control, con la esperanza de que nos dio automáticamente ejemplo haba, DI puede lograr esta operación, o en tres sub-ejemplo y las interfaces que enfrenta, el controlador la definición de una interfaz de capa de servicio que interfaces para el servicio que pueden anotar manera, la clase de servicio que implementa la interfaz impartiendo xml o configuración, siempre que el controlador y la clase de servicio a ser implementadas en el contenedor, los siguientes códigos:

@Controller
public class UserController {
	@Autowired
	private UserService service;
	
	public void hello(){
		service.hello();
	}
}
@Service
public class UserServiceImpl implements UserService {
	@Autowired
	private UserDao dao;
	
	@Override
	public String hello() {
		return dao.hello();
	}
}

DI en el recipiente puede ser igualada a una instancias de tipo de inyección consistentes correspondientes a la interfaz, por lo que la inversión no implementar inyector y efectos lo último disociados automático, y que si una pluralidad de tipos de implementaciones recipiente Existencia consistente cómo hacer puede utilizar @Qualifier(value="")o @Resource(name="")anotaciones para obtener una clase flexible y una aplicación, también sin cambios en el código Java.

Para citar un pequeño ejemplo de la COI y DI escena de una vida
le da a su cumpleaños de la hija, pastelería en la ciudad en la que no lo es, sólo tiene que preocuparse por mí mismo, y más tarde la ciudad abrió una pastelería, sólo hay que tienda en una llamada telefónica para decirle a sus necesidades, la tienda montar el pastel entregado a su puerta, se siente muy feliz.

Publicado 12 artículos originales · ganado elogios 3 · Vistas 239

Supongo que te gusta

Origin blog.csdn.net/qq_38599840/article/details/104852277
Recomendado
Clasificación