zoukankan      html  css  js  c++  java
  • 对IOC的理解

    我觉得 IOC 主要分两块去理解,  第一块 IOC是干什么的为什么需要IOC ?; 第二块,IOC 这么好,该怎么用?

    一: 为什么需要IOC?

    回答这个问题就要从ioc的含义入手:  IOC 控制反转 又叫 DI 依赖注入 ;  这些名词可能听起来不是很明白, 没关系 ,只要明白他是解决 对象生成 的就好办了 ;

    在项目中,一些对象可能在很多地方都需要用到 ; 你可能创建一个 , 然后你同事可能也创建一个 . 这样就可能 一个对象 被 创建 了 多次 ;  如果 创建对象过程简单还好,要是复杂的话 会有很多冗余的代码 ; 也不方便维护 ;

    这时 如果有人说 创建对象这事 不用你管了 , 你只负责用就可以了. 你会感叹真是及时雨呀.

    spring 的ioc容器 就是这个及时雨 , 使用spring ioc 容器 就意味着 不用再去创建对象了, 想用就直接拿来用好了 .

    这时 你可能会疑惑  这样不用自己创建对象 是很方便, 你可能会担心他能不能满足自己的需要 , 比如 这个对象 我需要他是单例的 , 另外一个对象 我需要他是 每一次都生成一个新对象 ;  或者说 我只想让这个对象在很短的时间内存在(比如一个请求范围内) , 而另外

    一个对象则在很长的时间内存在(比如,从容器初始化一直持续到容器结束) 这些需要 spring的ioc都可以满足你, spring的 提供了五种作用域 : 单例 原型 request session globalsession ;

    通过上面 你基本上 了解IOC是干什么的, 而且还可以放心地把bean 交给 spring ioc 容器来管理 ;.总之他不仅能满足你的各种需求 而且还可以 帮你省去很多麻烦 . 苦活 脏活 累活 都交给他 你只需要准备好原料 和 菜单 ; 然后就可以坐等 肉到碗里来了 . 接下来就该

    第二个问题了, IOC 这么好,该怎么用呢?

    二: IOC 的使用 ,

    由于此部分很多大牛已经讲的很好了,请自行百度: (如果需要我转述,请在评论区留言)

  • 相关阅读:
    hdu5728 PowMod
    CF1156E Special Segments of Permutation
    CF1182E Product Oriented Recurrence
    CF1082E Increasing Frequency
    CF623B Array GCD
    CF1168B Good Triple
    CF1175E Minimal Segment Cover
    php 正则
    windows 下安装composer
    windows apache "The requested operation has failed" 启动失败
  • 原文地址:https://www.cnblogs.com/sanmubird/p/8809952.html
Copyright © 2011-2022 走看看