spring框架的ioc(控制反转),是一种解耦思想。
在web开发中,接口的实现类,即持久层调用业务层方法,需要创建大量的对象,一旦类名改变,dao层的类名都需要改变,耦合度太高。spring提供的工厂,使得创建实现类对象时,不用开发人员创建对象,而是交给第三方spring容器。
IOC底层实现:工厂(设计模式)+反射(机制)+配置文件(xml)
两种方式:1、spring容器:getXXDao(){ return new XXDaoImpl();}
2、spring容器:getXXDao(){ Class.forName("类字符串").newInstance;}使用xml文件传递类字符串