spring IOC容器
来源:互联网 发布:最全生活网络理财投资 编辑:程序博客网 时间:2024/06/05 23:43
1为什么使用spring
我们知道任何一个应用都需要用到多个类(并不是所有的应用都像Hello the world ),既然有多个类,那么久涉及到了多个之间的协作,多个类之间如何协作呢,当然是靠通信了(就像我们人与人之间)。比如我们开发了一款软件,比如eclipse。我们知道eclipse有若干个组成部分(面板1,面板2,面板3,按钮1,按钮2,按钮3,下拉菜单1,下拉菜单2,下拉菜单3,啊好痛苦写不下去了),我们将每一个组成部分对应一个类。好了eclipse应该是这样的。
public class Eclipse{ Panel1 panel1; Panel2 panel2; Panel3 panel3; .... ... .. .}
好了,我们该启动一下这个Eclipse了。
public class Boot{ public static void main(String[] argv){ Panel1 p1=new Panel1(......); Panel2 p2=new Panel2(.....); Panel3 p3=new Panel3(.....); ..... Eclipse eclipse=new Eclipse(); eclipse.panel1=p1; eclipse.panel2=p2; eclipse.panel3=p3; ..... .. . }}
如果你是写Boot那个类的程序员,我不知道你会有什么想法,我只会骂娘,靠这段代码如此简单, 只是把eclipse的各个面板,按钮等等实例化了,然后传递给Eclipse实例,然后自己写代码写到手抽筋。好了,为了不让你写到手抽筋,你可以使用spring了, 在大家开发的时候你可以告诉他们,让他们每写好一个类,就到配置文件中配置一下。然后:
public class Boot{public static void main(String[] argv){ApplicationContext context=new ApplicationContext(....);Eclipse eclipse=(Eclipse)context.getBean("Eclipse");}}
高兴了吧,虽然做的事情依旧没有技术含量,但是至少不用写代码,写到手抽筋了。
好了前面的例子在扯淡,Eclipse根本不会设计成这个烂德行,spring的精髓也并不是让你把工作量分担给同事。
spring的精髓是IOC容器。生么是IOC容器呢?就是对IOC规范的实现
就是依赖注入这种规范的实现。这就好比我们运行java代码都需要jvm,但我们都知道jvm只是一个规范,而我们用到hotspot,jrocket等等才是jvm的具体实现。
好了生么是IOC:Inversion of Control,控制反转,有时候也叫DI,dependence injection,依赖注入。
好了,你只需要记住ioc,di只是个名字而已,就和某人叫xxx一样。好了,现在讲一下ioc,和di的精髓,就是我们将一个类写好了之后,然后在spring的配置文件中进行配置。当我们在某个程序段中需要用到某个类的一个实例(并不是所有的类都是无参的,并不是所有的类的实例你都会初始化),你直接通过这个实例对应的名称就可以了。比如就像我上面的那个Eclipse的例子。spring IOC容器,就相当于一个巨大的Map
- Spring反转容器IOC
- spring的Ioc容器
- Spring-- IOC容器详解
- Spring IOC 容器说明
- Spring IoC容器小结
- Spring--IoC容器
- Spring IoC 容器概述
- Spring的IoC容器
- Spring IOC 容器
- Spring之IoC容器
- Spring--IOC容器详解
- Spring-IOC容器
- Spring IOC容器
- Spring IOC容器实现
- Spring学习-IOC容器
- Spring IOC容器基本原理
- Spring-IOC容器
- Spring IOC容器基本原理
- iOS开发10大工具
- Tomcat配置远程调试
- 欢迎使用CSDN-markdown编辑器
- Cubieboard安装Apache2服务器
- Ubuntu 服务配置(sysv-rc-conf)
- spring IOC容器
- 每日总结-1
- 缺陷:域与静态方法
- 常用的iOS第三方资源
- gson处理泛型的问题
- 使用MediaPlayer的简单音乐播放器功能
- JSP中的九大内置对象
- js函数中this是全局变量还是当前对象
- 2540--第二天--特征值的添加和读写