Loading... 1. `@Component`注解表明一个类会作为组件类,并告知`Spring`要为这个类创建`bean`。 2. `@Bean`注解告诉`Spring`这个方法将会返回一个对象,这个对象要注册为`Spring`应用上下文中的`bean`。通常方法体中包含了最终产生`bean`实例的逻辑。 <div class="tip inlineBlock info"> 两者的目的是一样的,都是注册`bean`到`Spring`容器中。 </div> <div class="tip inlineBlock warning simple"> 区别: - `@Component(@Controller、@Service、@Repository)`通常是通过类路径扫描来自动侦测以及自动装配到`Spring`容器中。 - 而`@Bean`注解通常是我们在标有该注解的方法中定义产生这个`bean`的逻辑。 - `@Component`作用于类,`@Bean`作用于方法。 </div> <div class="tip inlineBlock success"> 总结: `@Component`和`@Bean`都是用来注册`Bean`并装配到`Spring`容器中,但是`Bean`比`Component`的自定义性更强。可以实现一些`Component`实现不了的自定义加载类。 </div> 最后修改:2023 年 03 月 06 日 © 转载自他站 打赏 赞赏作者 支付宝微信 赞 1 如果觉得我的文章对你有用,请随意赞赏