zoukankan      html  css  js  c++  java
  • 深入了解spring(二) IOC容器

    要理解这个得先了解控制反转的概念,举例如下

    加入有一个接口service 有post方法

    其有两个实现类如webservice    standaloneservice  

    需求是客户端调用post方法来完成操作

    如public void dopost(string type){

      service target = new webservice();

      target.post(type);

    }

    大致如上,如果以后改动,那么就很难的维护,进一步的做法,是用工厂模式来实现

    public void dopost(string type){

      service target = serviceFactory.newInstance();

      target.post(type);

    }

    工厂的具体实现需要一个类,而且还带有一个不太明确的参数,无法很好的显示

    用反转模式

    public void dopost(service target){

      target.post(type);

    }

    而参数里面的变量则由ioc容器注入,想用那个具体实现据用那个具体的实现,至于具体的方法都可以放到实现类的里面,这样就实现了高内聚、低耦合

    jdk反射

    cglib反射

    如果想要理解过程,那么就得弄清楚,如何把对象注入到容器中,通过哪种方式把外界配置的信息传进去框架,如何保存,如何转换,如何查找和调用,声明周期如何

    一.IOC容器的简介

       依赖注入:另一个称呼是控制反转,把对象的依赖关系交由ioc容器来控制,即对象依赖关系的管理被反转了,并由ioc注入

    可以理解为IOC提供了管理javabean的容器,通过ioc模式管理依赖关系,并通过ioc注入和aop增强了javabean这样的pojo的事物管理、生命周期管理等

    注入的方式有:setter注入、接口注入、构造注入

    二.IOC容器的设计和实现

  • 相关阅读:
    foreach_and_函数
    集合
    二维数组
    二维数组的操作
    字符串类型的一些操作
    数组循环的操作及思路
    数组操作
    js各种获取当前窗口页面宽度、高度的方法
    Jquery 获取 radio选中值,select选中值
    jQuery效果:隐藏、显示、切换、滑动、淡入淡出、动画
  • 原文地址:https://www.cnblogs.com/lvcongblog/p/10288336.html
Copyright © 2011-2022 走看看