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这两个概念是模糊不清的,是很难理解的,今天和大家 ...
随机推荐
- C++线程同步与互斥总结
互斥:当多个线程访问同一个全局变量,或者同一个资源(比如打印机)的时候,需要进行线程间的互斥操作来保证访问的安全性. 临界区.互斥体.事件和信号量都可以实现线程互斥.但如果仅仅需要实现互斥功能,推荐前 ...
- kafka环境安装及简单使用(单机版)
一个分布式发布-订阅消息传递系统 特点: 高吞吐量.低延迟 使用场景(举例): 日志收集:用kafka收集各种服务产生的log,通过kafka以统一的接口服务的方式开放给各种consumer,如had ...
- 在LINUX下ORACLE11.2.04的安装脚本及静默安装
首先写好配置环境脚本 cd /opt vi oraclesetup #!/bin/bashecho "back file to filebackup"mkdir -p /opt/f ...
- Linux命令——getconf
转自:灵活使用getconf命令来获取系统信息 简介 getconf本身是个ELF可执行文件,用于获取系统信息 用法 getconf -a可以获取全部系统信息 对于这个命令,记住几个常用的信息获取方法 ...
- QT生成的exe在其他电脑打开
首先说一下我的开发的平台:vs2017+QT5.9 我们首先先用release版本来编译一下程序,然后我们得到了一个exe程序但是这个程序是不能脱离你的平台,甚至是不能脱离你所在的文件夹,这是因为它需 ...
- zabbix Server 4.0 报警(Action)篇
zabbix Server 4.0 报警(Action)篇 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.查看zabbix默认的Actions 1>.点击默认的Actio ...
- CentOS7安装与优化
原文地址:https://www.cnblogs.com/blsnt/p/9556946.html
- Linux中快速对字符串进行加密
1)进行base64的加密和解密 [root@VM_0_10_centos opt]# echo hello |base64aGVsbG8K[root@VM_0_10_centos opt]# ech ...
- 《CoderXiaoban》第九次团队作业:Beta冲刺与验收准备3
项目 内容 这个作业属于哪个课程 任课教师博客主页链接 这个作业的要求在哪里 实验十三 团队作业9:BETA冲刺与团队项目验收 团队名称 Coderxiaoban团队 作业学习目标 (1)掌握软件黑盒 ...
- 关于docker的UnionFS系统原理
docker镜像的结构就像花卷一样,是一层一层的,比如tomcat镜像,它有450M左右,但我们实际的tomcat却很小,为什么tomcat镜像那么大呢,是因为,tomcat镜像的最里面是kernel ...