Spring——IOC与Bean容器
[IOC]
(1)IOC:控制反转,控制权的转移,应用程序本身不负责依赖对象的创建和维护,而是由外部容器负责创建和维护。也就是说由IOC容器在运行期间,动态地将某种依赖关系注入到对象之中
(2)DI:依赖注入,是其一种实现方式。
IoC的实现方式主要有两种:依赖查找、依赖注入,这两种方式Spring都是支持的,只不过Spring提倡的是依赖注入的方式。
i.依赖查找
如果我们直接通过BeanFactory或ApplicationContext的getBean(name)方法获取一个bean,这种方式就是依赖查找,这种方式也很好理解,就是直接通过bean的name去查找获得相应的bean。
ii.依赖注入
(3)目的:创建对象并且组装对象之间的关系。
如图所示:
[Bean容器初始化]
(1)基础:两个包
——org.springframework.beans
——org.springframework.context
——BeanFactory提供配置结构和基本功能,加载并初始化Bean
——ApplicationContext保存了Bean对象并在Spring中广泛应用
(2)Application初始化方式:
——本地文件(本地磁盘文件)
——classpath(相对与工程的路径)
——Web应用中依赖servlet和listener
Spring——IOC与Bean容器的更多相关文章
- 使用Spring IoC进行Bean装配
Spring概述 Spring的设计严格遵从的OCP(开闭原则),保证对修改的关闭,也就是外部无法改变spring内部的运行流程:提供灵活的扩展接口,也就是可以通过extends,implements ...
- Spring学习二----------IOC及Bean容器
© 版权声明:本文为博主原创文章,转载请注明出处 接口 用于沟通的中介物的抽象化 实体把自己提供给外界的一种抽象化说明,用以由内部操作分离出外部沟通方法,使其能被修改内部而不影响外界其他实体与其交互的 ...
- Spring IOC 之Bean作用域
当你创建一个bean定义的时候,你创建了一份通过那种bean定义的bean的创建类的真正实力的处方.bean的定义是一个处方 的想法是很重要的的.因为这意味着,对于一个类你可以创建很多对象实例从一个单 ...
- Spring IOC之Bean 概述
1.Bean概述 一个Spring IOC容器管理一个或者多个bean.这些bean是根据你提供给容器的配置数据信息创建的,例如XML形式的的定义. 在容器内部,这些bean的定义表示为BeanDef ...
- Ioc及Bean容器(三)
专题一 IoC 接口及面向接口编程 什么是 IoC Spring 的Bean配置 Bean 的初始化 Spring 的常用注入方式 接口 用于沟通的中介物的抽象化 实体把自己提供给外界的一种抽象化说明 ...
- Spring IOC的Bean对象
---恢复内容开始--- 在Spring IOC模块中Bean是非常重要的.在这里我想给大家讲讲关于Bean对象实例化的三种注入方式: 首先,我先讲一下关于Bean对象属性值的两种注入方式:set注入 ...
- spring IOC装配Bean(注解方式)
1 Spring的注解装配Bean (1) Spring2.5 引入使用注解去定义Bean @Component 描述Spring框架中Bean (2) Spring的框架中提供了与@Componen ...
- Spring课程 Spring入门篇 2-1 IOC和bean容器
课程链接: 本节讲了5部分内容,6为项目demo: 1 接口及面向接口编程 2 什么是IOC 3 Spring的bean配置 4 Bean的初始化 5 Demo 自己理解: 1 高层模块和底层模块都依 ...
- IOC及Bean容器
1. 接口及面向接口编程 1.1. 接口 用于沟通的中介物的抽象化 实体把自己提供给外界的一种抽象化说明,用以由内部操作分离出外部沟通方法,使其能被修改内部而不影响外界其他实体与其交互的方式 对应JA ...
随机推荐
- bigdata数据分析(二):关闭防火墙&安装telnet
先检查CentOS7.0是否已经安装以下两个安装包:telnet-server.xinetd.命令如下: rpm -qa telnet-server rpm -qa xinetd 如果没有安装,则先安 ...
- IntelliJ IDEA 快捷键终极大全
自动代码 常用的有fori/sout/psvm+Tab即可生成循环.System.out.main方法等boilerplate样板代码 . 例如要输入for(User user : users)只需输 ...
- 【Linux-驱动】驱动策略----信号量
访问共享资源的代码区块叫“临界区”,临界区需要以某种互斥机制加以保护:自旋锁.信号量等.互斥访问:一个执行单元在访问共享资源的时候,其他的执行单元被禁止访问. 信号量:在Liunx中的信号量是一种睡眠 ...
- [转帖]怎样选择(FC-SAN)光纤通道(存储)交换机
怎样选择(FC-SAN)光纤通道(存储)交换机 https://blog.csdn.net/sinat_30171789/article/details/50510936 交换机的种类非常多... ...
- centos7 无法启动网络(service network restart)错误解决办法(转)
centos7 无法启动网络(service network restart)错误解决办法:(以下方法均为网上COPY,同时感谢原博主分享) systemctl status network.serv ...
- HNUSTOJ 1604:Operations
1604: Operations 时间限制: 2 Sec 内存限制: 128 MB 提交: 313 解决: 97 [提交][状态][讨论版] 题目描述 You can perform the fo ...
- Node+Express+MySql实现简单增删改查和登录
var express = require('express'); var mysql = require('mysql'); var app = express(); var bodyParser ...
- 客户端通过url向后端传递参数
在前端我们不仅可以通过get请求携带参数的方式向服务端传数据: https://127.0.0.1/index/?id=1&name=alex Django也允许通过,path路径的方式向se ...
- 模板 - 无旋Treap
一般而言作为一棵平衡树只需要插入,删除,值求排名,排名求值,前驱,后继,六个接口. #include<bits/stdc++.h> using namespace std; typedef ...
- jquery TAB切换小插件
//tab切换 ;(function($, window, document, undefined) { $.fn.tab = function(options) { var defaults = { ...