学习java第六十一天

什么是控制反转(IOC)?什么是依赖注入(DI)?

IoC(Inversion of Control) -- 控制反转。它不是一种技术,而是一种思想。

IOC:就是对象之间的依赖关系由容器来创建,对象之间的关系本来是由我们开发者自己创建和维护的,在我们使用Spring框架后,对象之间的关系由容器来创建和维护,将开发者做的事让容器做,这就是控制反转。BeanFactory接口是Spring Ioc容器的核心接口。

DI:我们在使用Spring容器的时候,容器通过调用set方法或者是构造器来建立对象之间的依赖关系。 控制反转是目标,依赖注入是我们实现控制反转的一种手段。

Spring Bean 的作用域之间有什么区别?

Spring器中的bean可以分为5个范围:

singleton:这种bean范围是默认的,这种范围确保不管接受多少请求,每个容器中只有一个bean的实例,单例模式;

prototype:为每一个bean提供一个实例;

request:在请求bean范围内为每一个来自客户端的网络请求创建一个实例,在请求完毕后,bean会失效并被垃圾回收器回收;

session:为每个session创建一个实例,session过期后,bean会随之消失;

global-session:global-session和Portlet应用相关。当你的应用部署在Portlet容器中工作时,它包含很多portlet。如果你想要声明让所有的portlet公用全局的存储变量的话,那么全局变量需要存储在global-session中。

相关推荐
ALex_zry7 分钟前
C++26 Freestanding 库扩展详解:无操作系统也能用标准库
java·jvm·c++
Tian_Hang10 分钟前
Eclipse Mosquitto 安装及介绍
java·运维·服务器·ide·sql·mysql·eclipse
weelinking11 分钟前
weytoken微元算力企业级大模型治理平台深度评测
java·大数据·人工智能
卓怡学长18 分钟前
w273基于springboot的智能笔记的开发与应用
java·spring boot·spring·intellij-idea
码上有光30 分钟前
c++:map和set的底层实现
android·java·c++·set·map
峥嵘life35 分钟前
Android GMS 开机向导横竖屏切换配置总结
android·学习
剑挑星河月43 分钟前
234. 回文链表
java·数据结构·算法·leetcode·链表
六bring个六1 小时前
链表学习(常规链表)
数据结构·学习·链表
say_fall1 小时前
【Git 精品详解】企业规范:企业级开发模型、Git Flow、发版流程规范、Code Owner 制度、事故应急回滚
大数据·linux·服务器·git·学习·elasticsearch
plainGeekDev1 小时前
Gradle 写法 → Kotlin DSL
android·java·kotlin