本文共 861 字,大约阅读时间需要 2 分钟。
Spring就是一个大容器,里面有很多对象;
Spring容器的功能就是管理这些对象,管理这些对象的创建、销毁以及这些对象的搭配组合;
Spring容器中的对象常需要和其它对象搭班工作,需要依赖其它对象的帮助,但是它很"懒"不想去找其它对象,这时候容器帮它找对象,把他们组合起来,这就叫IoC(控制反转/依赖注入)。
IoC即控制反转,指对象间的依赖关系不由对象自身维护,而是由外部容器给定。
Spring容器中的对象有点个性,只想干个性化有趣的活儿,不愿干大众化的、一般的活儿,于是容器就把这些活帮它们干了,这就叫AOP(面向切面的编程)。
是AOP(面向切面的编程)可以这样描述:将系统中多个模块都需要执行的通用功能剥离出来,单独地开发和维护,各模块源代码中不再有执行通用功能的代码,而是在系统运行时,由外部容器将通用功能自动地应用于各个模块中去。
这里场景是饲养员给动物喂食物,在这个场景中有三个对象,分别是饲养员、动物和食物,饲养员显然需要依赖动物和食物,否则无法完成工作,而且饲养员可能因工作需要经常变换动物和食物。
开发Feeder类(饲养员)、Animal接口(动物)、Food接口(食物),还有Animal和Food的若干实现类。Feeder类只直接与两个接口有关系,这样Feeder类就可以和具体的Animal和Food实现对象脱离关系(解耦),在运行时由容器将具体的Animal对象和Food对象与Feeder组合。
Spring容器管理哪些对象,以及这些对象之间是什么样的依赖关系,如何组合装配,都需要有一个说明,这就是配置类的作用。
转载地址:http://mnhdi.baihongyu.com/