前言:学习自https://www.bilibili.com/video/BV1WE411d7Dv?p=11
文章目录
一、Bean的作用域
1、Bean简介
在Spring中,那些组成应用程序的主体及由Spring IoC容器所管理的对象,被称之为bean。简单地讲,bean就是由IoC容器初始化、装配及管理的对象。
2、各作用域简介
下图为bean的几种作用域
(1)singleton(单例模式)
(2)prototype(原型模式)
(3)request
(4)session
(5)application
(6)websocket
3、配置方式
bean作用域的配置是通过bean标签中的scope属性
二、Bean中属性的自动装配
Spring中bean的自动装配需要从两个角度来实现,或者说是两个操作:
- 组件扫描(component scanning):spring会自动发现应用上下文中所创建的bean;
- 自动装配(autowiring):spring自动满足bean之间的依赖,也就是我们说的IoC/DI;
三、XML方式与注解方式的选择
对于配置Spring,注释比XML更好吗?
引入基于注释的配置引发了这样一个问题:这种方法是否比XML“更好”。简单的回答是视情况而定。每种方法都有其优缺点,通常情况下,开发者需要决定哪种策略更适合自己。由于它们的定义方式,注释在其声明中提供了大量上下文,导致配置更短、更简洁。但是,XML擅长在不修改源代码或重新编译组件的情况下连接组件。一些开发人员更喜欢在接近源代码的地方进行连接,而另一些人则认为带注释的类不再是pojo,而且,配置将变得分散,更难控制。
无论选择哪一种,Spring都可以容纳这两种风格,甚至可以将它们混合在一起。值得指出的是,通过它的JavaConfig选项,Spring允许以一种非侵入性的方式使用注释,而不涉及目标组件源代码,而且,就工具而言,Eclipse的Spring工具支持所有配置样式。