Spring 面试题, 什么是 Spring Bean?
Spring 面试题, 什么是 Spring Bean?
QA
Step 1
Q:: 什么是 Spring Bean?
A:: Spring Bean 是 Spring 框架中的核心概念,它表示由 Spring 容器管理的对象。Spring Bean 主要用于配置、初始化和依赖注入。这些对象可以是单例的,也可以是原型的,依赖于具体的配置方式。
Step 2
Q:: 如何定义一个 Spring Bean?
A:: 你可以通过三种方式定义一个 Spring Bean:1)使用 XML 配置文件,通过 <bean> 标签定义;2)使用注解(如 @Component, @Service, @Repository, @Controller 等);3)通过 Java 配置类使用 @
Bean 注解来定义。
Step 3
Q:: 什么是 Spring Bean 的生命周期?
A:: Spring Bean 的生命周期包括实例化、属性注入、初始化和销毁四个阶段。1)实例化:通过构造函数或静态工厂方法创建 Bean 实例;2)属性注入:通过依赖注入完成 Bean 属性的赋值;3)初始化:如果 Bean 实现了 InitializingBean 接口或指定了 init-method,Spring 会在属性注入后调用它们;4)销毁:容器关闭时,如果 Bean 实现了 DisposableBean 接口或指定了 destroy-
method,Spring 会调用它们来进行销毁。
Step 4
Q:: 什么是依赖注入 (Dependency Injection)
?
A:: 依赖注入是 Spring 的核心功能之一,它用于将对象之间的依赖关系由容器在运行时动态地注入。通过构造器注入、Setter 注入或字段注入,Spring 容器可以在实例化 Bean 时自动满足其依赖的其他 Bean。
Step 5
Q:: 什么是 IoC (控制反转)
?
A:: 控制反转(Inversion of Control,
IoC)是指将对象的创建和依赖的管理权从应用程序代码转移到容器的设计模式。在 Spring 中,IoC 通过依赖注入机制实现。程序员不再手动创建对象,而是依赖容器在运行时提供并管理对象的生命周期和依赖。