Spring自动装配和Bean的作用域
Spring的三种配置方案
1.XML
2.Annotation
3.javaConfig
注解装配Bean
组件扫描 :Srping在上下文中找到bean
自动装配 :自动满足bean之间的依赖
过程:
1)、创建可被发现的bean
2)、为组件扫描的bean命名 -->和类名一致
3)、设置组件扫描的基础包
4)、通过为bean添加注解实现自动装配
----------------------------------------------------------------------------------
1.扫描我们指定的包
----------------------------------------------------------------------------------
2.通过以下方式进行注入
----------------------------------------------------------------------------------
当我们引入第三方jar包的时候,无法使用我们的自动装配方案
可选 1.javaConfig 更加友好便捷 --> 配置代码(不包含业务逻辑)
2.xml 繁琐
----------------------------------------------------------------------------------
JavaConfigBean
两种注入方式
----------------------------------------------------------------------------------
XML装配方式
两种注入方式
----------------------------------------------------------------------------------
@Autowired :自动装配成员变量
@Qualifier: 注释指定注入Bean的ID
------------------------------------------------------
@Component:定义一个Bean
@Controller: 控制器
@Service : 定义一个service
@Repository: 自动装配成员变量
------------------------------------------------------
@Scope :自动装配成员变量
----------------------------------------------------------------------------------
Bean 的作用域
单例 (singleton) : 整个应用中只有一个实例
value=ConfigurableBeanFactory.SCOPE_SINGLETON
多例 (prototype) :每次注入或者通过上下文获取是都会创建一个Bean
value=ConfigurableBeanFactory.SCOPE_PROTOTYPE
请求 (request) :每个请求创建一个bean实例
value=WebApplicationContext.SCOPE_REQUEST
会话 (session) :为每个会话创建一个bean实例
value=WebApplicationContext.SCOPE_SESSION