Spring的IOC(控制反转)与DI(依赖注入)

Spring的IOC(控制反转)与DI(依赖注入)
(尊重劳动成果,转载请注明出处:https://blog.csdn.net/qq_39778516/article/details/84260316 consistencely的博客)
一、Spring的IOC
1、什么是IOC(控制反转)
控制反转:就是将对象创建的权利交给框架来完成。我们以前创建对象是通过new关键字来实现,这个权利在我们自己,现在的权利在框架,实现了一个权利的反转,它包含了依赖注入(DI)。
2、如何使用spring中的IOC
1)导坐标

<dependencies>
    		<dependency>
      		 <groupId>org.springframework</groupId>
        		<artifactId>spring-context</artifactId>
        		<version>5.0.2.RELEASE</version>
    		</dependency>
         </dependencies>

2)配置核心配置文件bean.xml
在这里插入图片描述

3)获取核心容器对象ApplicationContext,调用getBean,获取对象
在这里插入图片描述
3、ApplicationContext三个实现类
ClassPathXmlApplicationContext:用于读取类路径下的配置文件(常用)
FileSystemXmlApplicationContext:用磁盘绝对路径读取配置文件(不用)
AnnotationConfigApplicationContext:用于读取注解(明天要学习的内容)
4、ApplicationContext和BeanFactory的区别
1)、ApplicationContext是BeanFactory的子接口
2)、ApplicationContext读取完配置文件就立即创建对象 – 单例(常用)
3)、BeanFactory在调用getBean方法时才去创建对象,采用的是延迟加载的策略 --单例
5、创建Bean对象的三种方式(重点)
1)、使用默认构造函数创建
在这里插入图片描述
2)使用类中的方法创建对象
在这里插入图片描述
Factory-bean:指向的是配置的工厂类
Factory-method:指向的是这个工厂类中返回对象的方法
3)使用类中的静态方法创建对象
在这里插入图片描述
Factory-method:指向的是这个工厂类中返回对象的静态方法
6、bean对象的作用范围
singleton:单例(默认)
prototype:多例
注意:以下三种只能用于web项目
request:一次请求的范围
session:一次会话的范围
global-session:作用于集群环境的会话范围
7、bean的生命周期(知道)
单例:随着容器的创建而创建,随着容器的销毁而销毁
多例:调用的时候创建,销毁时交给JVM垃圾回收机制来处理
四、依赖注入(Dependency Injection)
1、什么是依赖注入(DI)
依赖关系的维护就叫依赖注入。
大白话:我们在使用spring容器创建bean时,bean中需要的参数或者是属性需要用注入的方式给其赋值,这就是依赖注入
2、注入的数据类型
1)、基本数据类型和String
2)、复杂的类型—>集合、Date等
3)、其他的bean类型(service/dao)(最常用)
3、注入的方式(掌握)
1)构造方法注入
使用的是标签
在这里插入图片描述
value:用于注入基本类型数据和String
ref:用于注入其他的bean
注意事项:通过构造函数注入,函数中的参数是必填项

2)setter方法注入
使用的是
在这里插入图片描述
注意事项:使用set方法注入时,不能保证每个变量都被赋值

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值