@bean里面没有component
@Bean 和 @Component 都是 Spring 框架中用于定义和注册 bean 的注解,但它们的使用场景和方式有所不同。
@Bean
- @Bean 注解用在方法上,通常在配置类(带有 @Configuration 注解的类)中使用。
- 它表示通过方法返回的对象应该被注册为 Spring 应用上下文中的一个 bean。
- @Bean 方法可以非常灵活地创建复杂对象,允许编程式地定义对象的创建逻辑。
- 示例:
@Component
- @Component 注解用在类上,表示该类会作为组件类,并告诉 Spring 需要为这个类创建 bean。- 它是一个泛化的概念,仅仅通过类的注解来自动注册 bean,适用于那些不需要复杂逻辑就能创建的简单 bean。
- Spring 还提供了几个特定的注解,如 @Service、@Repository、@Controller,它们都是 @Component 的特化,用于不同的场景,但本质上与 @Component 相同,都会导致 Spring 创建一个 bean。
- 示例: @Component
public class MyComponent {
// Spring 会为这个类创建一个 bean
} 总结来说,@Bean 用于方法上,适用于需要编程式逻辑来创建复杂对象的场景;而 @Component 用于类上,适用于那些直接由 Spring 自动创建实例的简单类。
标签:Spring,Component,Bean,用法,bean,component,创建,注解 From: https://www.cnblogs.com/JavaYuYin/p/18000680