Spring-----IOC

DI/IOC:

依赖注入——DI:
在运行期,由外部容器动态地将依赖对象注入到组件中;
依赖注入的方式:  constructor-arg:通过构造函数注入。   property:通过setxx方法注入。
控制反转————IOC:
由Spring 容器 创建依赖对象及维护,控制权的转移就是控制反转。
依赖关系:一个biz类在处理业务逻辑时要操作数据库,使用一个DAO类的方法操作数据库。
1.主动接受demo:
public class DemoDAO {
public void save(){
}
public class DemoBIZ {
private DemoDAO demoDAO=new DemoDAO();
public void save(){
demoDAO.save();
}
}
DemoBIZ依赖于DemoDao类,主动获得--用时实例化。
-------------------------------------------------------------------------------
2.被动接收demo:
public interface DemoDAO {
     public void save();
}
public class DemoDAOImpl implements DemoDAO {
     public void save(){
     }
}
public class DemoBIZ {
     private DemoDAO demoDAO;
     public DemoDAO getDemoDAO() {
         return goodsDAO;
     }
     public void setDemoDAO(DemoDAO demoDAO) {
         this.demoDAO = demoDAO;
     }
     public void save() {
System.out.println("DemoBIZ.save()");
         demoDAO.save();
     }
}
public static void main(String[] args) {
// TODO Auto-generated method stub
DemoDAO demoDAO = new DemoDAOImpl();
DemoBIZ demoBIZ = new DemoBIZ();
demoBIZ.setDemoDAO(demoDAO); //依赖注入
demoBIZ.save();
}
DemoBIZ 依赖于一个 DemoDAO。但现在DemoDAO是一个接口。
DemoDAO接口下面有一个DemoDAOImpl实现类。
现在DemoBIZ使用哪个DemoDAO自己不知道。在运行时由外部容器创建一个传参。
现在DemoBIZ只能被动接收一个DemoDAO。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值