您的位置:首页 > 编程语言 > Java开发

spring--IOC容器

2016-07-03 22:11 344 查看
IOC:Inversion of Control,即控制反转:本来是由应用程序控制对象之间的依赖关系,现在交给了容器管理(spring IOC容器),而spring IOC容器通过DI(即依赖注入)的方式来实现管理和控制这些依赖关系。

应用程序控制对象之间的依赖关系时,要用一个对象,要先创建一个实例,即new 一个对象,而IOC容器控制这些依赖关系时,不需要直接在代码中与对象连接,而是在配置文件中描述要使用的对象,容器负责键这些对象联系起来。

在spring中,最基本的IOC容器接口为BeanFactory,这个接口为具体的IOC容器的实现做了最基本的功能规定:

public class BeanFactory{

//对FactoryBean的转义定义,因为如果使用bean的名字检索FactoryBean得到的对象是工厂生成的对象

//如果需要得到工厂本身,需要转义

String FACTORY_BEAN_PREFIX = “&”;

//根据bean的名字,在IOC容器里得到bean实例

Object getBean(String name)throws BeansException;

//根据bean的名字和CLass类型来得到bean实例

Object getBean(String name,Class requredType)throws BeansException;

//对bean的检索,检索IOC容器中是否有此名字的BEAN

boolean containsBean(String name);

//根据bean名字获取实例,并判断是否是单例

boolean isSingleton(String name)throws NoSuchBeanDefinitionException;

//根据bean名字获取bean实例的CLASS类型

Class getType(String name) throws NoSuchBeanDefinitionException;

//根据bean名字获取bean别名

String[] getAliases(String name);

}

在BeanFactory里只是对IOC容器的基本行为做了定义,具体要看其实现,另外IOC容器实现对依赖对象管理是通过依赖注入DI实现的。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  spring IOC-控制反转