【Spring IoC】IoC介绍(一)
IoC(Inversion of Control)的职责:原先由程序员主动通过new实例化对象这个事情,现在交由Spring负责,即由IoC容器负责。
Spring 容器是 Spring 框架的核心。容器将创建对象,把它们连接在一起,配置它们,并管理他们的整个生命周期从创建到销毁。Spring 容器使用依赖注入(DI)来管理组成一个应用程序的组件。这些对象被称为 Spring Beans。
通过阅读配置元数据提供的指令,容器知道对哪些对象进行实例化,配置和组装。配置元数据可以通过 XML,Java 注释或 Java 代码来表示。
IOC 容器具有依赖注入功能的容器,它可以创建对象,IOC 容器负责实例化、定位、配置应用程序中的对象及建立这些对象间的依赖。通常new一个实例,控制权由程序员控制,而"控制反转"是指new实例工作不由程序员来做而是交给Spring容器来做。在Spring中BeanFactory是IOC容器的实际代表者。
Spring 提供了以下两种不同类型的容器:
BeanFactory 容器:它是最简单的容器,给 DI 提供了基本的支持,它用 org.springframework.beans.factory.BeanFactory 接口来定义。BeanFactory 或者相关的接口,如 BeanFactoryAware,InitializingBean,DisposableBean。
ApplicationContext 容器:该容器添加了更多的企业特定的功能,例如从一个属性文件中解析文本信息的能力,发布应用程序事件给感兴趣的事件监听器的能力。该容器是由 org.springframework.context.ApplicationContext 接口定义。
ApplicationContext 容器包括 BeanFactory 容器的所有功能。
最新文章
- 浅谈angular2+ionic2
- TortoiseGit 图标不显示
- GCD使用dispatch_semaphore_t创建多线程网络同步请求
- HDU 2082 找单词 --生成函数
- java 14 -5 System类
- dedecms 文章页调用来源合适时间的方法
- hdu 2489 最小生成树状态压缩枚举
- .Net平台下的B/S开发框架
- 使用css3属性,大部分浏览器要识别前缀
- UniCode 下 CString 转 char* 的方法(转)
- java 项目得到jar和classes路径
- vmware三种网络模式的工作原理及配置详解
- [持续交付实践] pipeline使用:Multibranch Pipeline
- HTML5 实现获取 gzip 压缩数据,并进行解压,同时解决汉字乱码,相关 pako.js
- EditText的焦点问题
- ubuntu开发环境下eclipse的alt+/自动补全功能不能用
- 20155339 第七周加分项目 mybash的实现
- HDU 4135 容斥
- ovs加dpdk在日志中查看更多运行细节的方法
- 4、运行成功的Demo(PyCharm+Selenium)
热门文章
- vue.js 使用v-model v-once
- golang module 在 spacemcs 中的配置
- Docker学习(六)-Kubernetes - Spring Boot 应用
- 解决 IDEA 无法找到 java.util.Date 的问题
- 图灵的文章“Computing machinery and intelligence”译文
- dedecms5.7文章页替换掉特定标志的图片链接
- Microsoft.Windows.Controls.Ribbon.RibbonWindow 碰到 AvalonDock出现的诡异现象
- gitea/gogs在push操作时报RPC failed的问题
- C#关键字 const与readonly
- EurekaServer自动装配及启动流程解析