Spring IOC是什么
IOC
什么是IOC
IOC: Inversion of Control(控制反转)
控制反转:将对象的创建权反转给(交给)Spring。
传统开发模式
- 业务和实现类过于紧密,底层业务要修改源代码
 - 通过工厂可以实现,接口与实现业务的分离
 - 在工厂内部使用配置文件加载
 
使用spring-IOC
- 1.添加jar包
 - 2.创建配置文件
 - 通常名称起为applicationContext.xml
 
<?xml version="1.0" encoding="UTF-8"?>
	<beans xmlns="http://www.springframework.org/schema/beans"
	xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
	xsi:schemaLocation="http://www.springframework.org/schema/beans
	 http://www.springframework.org/schema/beans/spring-beans.xsd">
</beans>
3.添加配置文件

4.测试使用


IOC与DI
DI:依赖注入
前提必须有IOC的环境
Spring管理这个类的时候才能将类的依赖的属性值注入(设置)进来
依赖注入:给spring管理类当中依赖的属性,通过配置文件进行赋值的过程
传统方式

DI方式
1.实现类当中的属性要提供set方法

2.在配置文件当中配置依赖注入


Spring的工厂类
BeanFactory
老版本使用方式
当调用getBean的时候才会创建实例对象
ApplicationContext
新版本使用方式
当加载配置文件时候就会创建实例对象
ApplicationContext实现类
ClassPathXmlApplicationContext
加载类路径下的配置文件
FileSystemXmlApplicationContext	
加载文件系统下的配置文件
Spring IOC是什么的更多相关文章
- 【初探Spring】------Spring IOC(三):初始化过程---Resource定位
		
我们知道Spring的IoC起到了一个容器的作用,其中装得都是各种各样的Bean.同时在我们刚刚开始学习Spring的时候都是通过xml文件来定义Bean,Spring会某种方式加载这些xml文件,然 ...
 - 【初探Spring】------Spring IOC(一)
		
IOC:Inversion of Control(控制反转).IOC它所体现的并不是一种技术,而是一种思想,一种将设计好的对象交给容器来管理的思想.IOC的核心思想就体现在控制.反转这两个词上面,要理 ...
 - spring ioc
		
spring ioc是spring的核心之一,也是spring体系的基础,那么spring ioc所依赖的底层技术是什么的?反射,以前我们开发程序的时候对象之间的相互调用需要用new来实现,现在所有的 ...
 - Spring IoC源码解析——Bean的创建和初始化
		
Spring介绍 Spring(http://spring.io/)是一个轻量级的Java 开发框架,同时也是轻量级的IoC和AOP的容器框架,主要是针对JavaBean的生命周期进行管理的轻量级容器 ...
 - spring笔记6 spring IOC的中级知识
		
1,spring ioc的整体流程,xml配置 spring ioc初始化的流程结合上图 步骤编号 完成的工作 1 spring容器读取配置文件,解析称注册表 2 根据注册表,找到相应的bean实现类 ...
 - 谈谈对Spring IOC的理解(转)
		
学习过Spring框架的人一定都会听过Spring的IoC(控制反转) .DI(依赖注入)这两个概念,对于初学Spring的人来说,总觉得IoC .DI这两个概念是模糊不清的,是很难理解的,今天和大家 ...
 - 自己动手编写spring IOC源码
		
前言:对于spring IOC概念不是很了解的朋友可以阅读我上一篇博客--轻松理解spring IOC(这两篇博客也是由于我的个人原因导致现在才发布,惭愧啊).通过这篇博客的理解之后,相信大家会对sp ...
 - spring ioc   源码解析
		
什么是ioc? 通俗的解释是:(spring)框架中,完成对象的创建和注入的容器. springIOC体系结构: spring IOC的创建是典型的工厂模式,这一系列的bean工厂如上所示. 其核心是 ...
 - Spring:源码解读Spring IOC原理
		
Spring IOC设计原理解析:本文乃学习整理参考而来 一. 什么是Ioc/DI? 二. Spring IOC体系结构 (1) BeanFactory (2) BeanDefinition 三. I ...
 - 谈谈对Spring IOC的理解
		
学习过Spring框架的人一定都会听过Spring的IoC(控制反转) .DI(依赖注入)这两个概念,对于初学Spring的人来说,总觉得IoC .DI这两个概念是模糊不清的,是很难理解的,今天和大家 ...
 
随机推荐
- 判断是否发生url跳转
			
url="https://www.baidu.com/" url='http://www.freebuf.com/fevents/133225.html' # 方法一:禁止跳转:a ...
 - ssh远程登录连接慢的解决方法
			
近期在搭建自动化集群服务,写脚本ssh批量分发公钥至其它服务器时比较缓慢,便在度娘上寻找解决方法如下: 方法一: 以ssh -v 调试模式远程登录: [root@bqh-nfs- ceshi]# ss ...
 - Python学习日记(三) 学习使用dict
			
数据按类型可划分为: 不可变数据类型(可哈希):元祖.string.int.bool 可变数据类型(不可哈希):dict.list 集合本身是可变数据类型,元素是不可变数据类型 字典中的key必须是不 ...
 - JQuery EasyUI treegrid展开与折叠,以及数据加载两次的问题
			
问题:做项目的时候遇到代码生成的页面,只默认展开了一级节点,每次操作之后刷新还要手动一级一级展开,太麻烦了 官方API:http://www.jeasyui.net/plugins/186.html ...
 - web安全及渗透
			
kali linux是最好的黑客linux渗透发行版,包含许多实用工具. 参考:用于黑客渗透测试的 21 个最佳 Kali Linux 工具 https://linux.cn/article-10 ...
 - DNS BIND配置 配置基本缓存服务器 DNS正向解析 DNS反向解析
			
一. 缓存服务器配置 1.DNS:BIND Berkeley Internet Name Domain 版本bind97: RPM服务器端包的名字 安装bind-libs bind ...
 - python抽象基类
			
抽象基类 抽象基类提了一种方式,用以组织对象的层次结构,做出关于所需方法的断言,以及实现其他一些功能 要定义抽象基类,需要使用abc模块,该模块定义了一个元类(ABCMeta) 和一组装饰器(@abs ...
 - k8s安装之calico.yaml
			
这个calico有点长,我也没有仔细看完. 但部署上去是可用的. 如果节点超过200台,那最好要另外一套配置... 而对于我们,差不多下面的配置够用了. veth_mtu: "1440&qu ...
 - Python3中BeautifulSoup的使用方法
			
BeautifulSoup的使用 我们学习了正则表达式的相关用法,但是一旦正则写的有问题,可能得到的就不是我们想要的结果了,而且对于一个网页来说,都有一定的特殊的结构和层级关系,而且很多标签都有id或 ...
 - keras模块学习之Sequential模型学习笔记
			
本笔记由博客园-圆柱模板 博主整理笔记发布,转载需注明,谢谢合作! Sequential是多个网络层的线性堆叠 可以通过向Sequential模型传递一个layer的list来构造该模型: from ...