IOC(容器),用来集成别的框架

1.IOC(Inversion(反转)Of Control):控制反转

  控制:资源的获取方式:

      主动式:

        BookServlet{

          BookService bs=new BookService();

          AirPlane ap=new AirPlane();//复杂对象的创建是比较庞大的工程

        }

      被动式:资源的获取不是我们自己创建,而是交给一个容器来创建和设置

        BookServlet{

          BookService bs;

          public void test01(){

            bs.checkout();

          }

        }

  容器:管理所有组件(有功能的类);假设,BookServlet受容器管理,BookService也受容器管理;容器可以自动探查出哪些组件(类)需要用到另一些组件(类);容器帮我们创建BookService对象,并把BookService对象赋值过去;

  容器:主动的new资源变为被动的接受资源。类似于婚介所,告诉婚介所要一个怎么样的对象,婚介所自动给你安排剩下的事情,不需要自己找。

DI:(Dependency Injection)依赖注入;

  容器能知道那个组件(类)运行的时候,需要另外一个类(组件);容器通过反射的形式,将容器中准备好的BookService对象注入(利用反射给属性赋值)到BookServlet

只要是容器管理的组件,都能使用容器提供的强大功能;

最新文章

  1. 前端SEO技巧
  2. 《Pro Express.js》学习笔记——Express服务启动常规七步
  3. 数组的一个强大函数splice,[增,删,改]
  4. VBA 操作数字
  5. 修改oracle重做日志文件大小
  6. apache部署django记录
  7. OpenCV之响应鼠标(二):函数cvSetMouseCallback()和其副程式onMouse()的使用(OpenCV2.4.5)
  8. javascript输出图的简单路径
  9. C# 获取中文星期的两种方法
  10. Swift - 使用CoreLocation实现定位(经纬度、海拔、速度、距离等)
  11. AngularJS测试二 jasmine测试路由 控制器 过滤器 事件 服务
  12. Lucene.Net简介和分词
  13. emoji 表情: MySQL如何支持 emoji 表情
  14. warnings.warn("allowed_domains accepts only domains, not URLs. Ignoring URL entry %s in allowed_doma
  15. 使用StringEscapeUtils转义、反转义字符串
  16. 解决移动端真机不能下拉滚动bug
  17. wamp安装运行时出现服务未启动
  18. mysql bigint ,int , smallint,tinyint 的范围
  19. HTTP请求模型和头信息参考
  20. PAT 甲级 1057 Stack

热门文章

  1. JAVA配置系统变量
  2. 【图数据库】史上超全面的Neo4j使用指南
  3. fatal: Not a git repository (or any of the parent directories)
  4. .map() .filter() .reduce() .includes() .some() .every()的用法
  5. tf.concat()
  6. H3CFTP操作示例
  7. Linux 内核 kobject 初始化
  8. 原生js重写each方法
  9. 【u033】地震逃生
  10. Python8_关于编码解码和utf-8