IOC原理解释

spring ioc它其实是一种降低对象耦合关系的设计思想,通常来说,我们在一个类调用另一个类的方法的时候,需要不断的new新的对象来调用该方法,类与类之间耦合度比较高,有了ioc容器以后,ico容器帮对象找相应的依赖对象并注入,而不是由对象主动的去找。这就是控制反转。

ioc最重要的一点就是可以在程序运行的时候,动态的向某个对象提供它所需要的其他对象,这就是通过依赖注入实现的,比如,我们对数据库进行操作,需要一个connection对象,以前,我们都是手动的去编写一些代码获取一个connection,有了spring以后,我们只需要告诉它,我需要一个connection对象,至于它如何生成,什么时候生成,我不需要关心,在系统运行的时候,spring会适时的创建一个connection,然后像打针一样注入到对象中,这样就完成了各个对象之间的关系的控制。

那它是怎么做到的呢,就是通过反射机制做到的,反射机制可以在程序运行的时候,得到一个对象所属的类,获取一个类的所有成员变量和方法,在运行时动态的创建类的对象,在运行时调用对象的方法。

时间: 2024-08-24 16:58:20

IOC原理解释的相关文章

Java反射机制及IoC原理

一. 反射机制概念 主要是指程序可以访问,检测和修改它本身状态或行为的一种能力,并能根据自身行为的状态和结果,调整或修改应用所描述行为的状态和相关的语义.在java中,只要给定类的名字, 那么就可以通过反射机制来获得类的所有信息. 反射是Java中一种强大的工具,能够使我们很方便的创建灵活的代码,这些代码可以再运行时装配,无需在组件之间进行源代码链接.但是反射使用不当会成本很高! 类中有什么信息,利用反射机制就能可以获得什么信息,不过前提是得知道类的名字. 二. 反射机制的作用 在运行时判断任意

Java反射及 IoC原理、内省机制

JAVA反射及IoC原理.JAVA内省 1. 反射 反射是框架设计的灵魂,使用前提:必须先得到代表的字节码的Class,Class类用于表示.class文件(字节码文件). 1.1 反射概述 主要指程序可以访问,检测和修改它本身状态或行为的一种能力,并能根据自身行为的状态和结果,调整或修改应用所描述行为的状态和相关的语义. Java反射机制:在运行状态中,对于任意一个类,都能够知道这个类的所有属性和方法:对于任意一个对象,都能够调用它的任意一个方法和属性. 1.2 反射机制的作用 在运行时判断任

Objective-C中,ARC下的 strong和weak指针原理解释

Objective-C中,ARC下的 strong和weak指针原理解释 提示:本文中所说的"实例变量"即是"成员变量","局部变量"即是"本地变量" 一.简介 ARC是自iOS 5之后增加的新特性,完全消除了手动管理内存的烦琐,编译器会自动在适当的地方插入适当的retain.release.autorelease语句.你不再需要担心内存管理,因为编译器为你处理了一切 注意:ARC 是编译器特性,而不是 iOS 运行时特性(除

svm原理解释及推理

 1 初次理解SVM,咱们必须先弄清楚一个概念:线性分类器. 给定一些数据点,它们分别属于两个不同的类,现在要找到一个线性分类器把这些数据分成两类.如果用x表示数据点,用y表示类别(y可以取1或者-1,分别代表两个不同的类),一个线性分类器的学习目标便是要在n维的数据空间中找到一个超平面(hyper plane),这个超平面的方程可以表示为( wT中的T代表转置): 可能有读者对类别取1或-1有疑问,事实上,这个1或-1的分类标准起源于logistic回归. Logistic回归目的是从特征学习

[分享]Host文件的原理解释及应用说明

Host文件的原理解释及应用说明 Host文件位置及打开方式: Window系统中有个Hosts文件(没有后缀名), Windows 98系统下该文件在Windows目录,在Windows 2000/XP/Vista系统中位于C:\windows\system32\drivers\etc\ 目录中.该文件其实是一个纯文本的文件,用普通的文本编辑软件如记事本等都能打开. 工作原理: 我们知道在网络上访问网站,要首先通过DNS服务器把网络域名(www.XXXX.com)解析成61.XXX.XXX.X

Spring IOC原理(初级版)

Spring框架是由于软件开发的复杂性而创建的.Spring使用的是基本的JavaBean来完成以前只可能由EJB完成的事情.然而,Spring的用途不仅仅限于服务器端的开发.从简单性.可测试性和松耦合性的角度而言,绝大部分Java应用都可以从Spring中受益. ------------------------------------------------------------↑ 以上都是废话,我也不懂 ↑   ↓ 下面是整体架构,可以略过 ↓ ----------------------

VLAN原理解释

目录 -------------------------------------------------------------------------------- 1.为什么需要VLAN 2.实现VLAN的机制 3.VLAN的访问链接(Access Link) 4.VLAN的汇聚链接(Trunk Link) 5.VLAN的汇聚方式--IEEE802.1Q与ISL 6.VLAN间路由 7.三层交换机 8.加速VLAN间通信的手段 9.传统型路由器存在的意义 10.使用VLAN设计局域网 ---

【Spring】Spring IOC原理及源码解析之scope=request、session

一.容器 1. 容器 抛出一个议点:BeanFactory是IOC容器,而ApplicationContex则是Spring容器. 什么是容器?Collection和Container这两个单词都有存放什么东西的意思,但是放在程序猿的世界,却注定是千差万别.Collection,集合,存放obj instanceof Class为true的一类对象,重点在于存放:Container,容器,可以存放各种各样的obj,但不仅仅是存放,他被称为容器,更重要的是他能管理存放对象的生命周期和依赖. 容器:

Spring——IoC原理

一.概念 IoC是Inversion of Control的缩写,有的翻译成"控制反转",还有翻译为"控制反向"或者"控制倒置". 二.什么是IoC IoC就是IoC,不是什么技术,与GoF一样,是一种设计模式.在Spring中控制反转是Spring框架的核心,其原理是基于OO设计原则的:Don't call us,we'll call you(别来找我,我会来找你的).也就是说,所有组件都是被动的,所有的组件初始化和调用都由容器负责.组件处在一