为了账号安全,请及时绑定邮箱和手机立即绑定

Spring:@Component与@Bean

Spring:@Component与@Bean

ITMISS 2019-07-31 14:07:00
Spring:@Component与@Bean我知道@Component在Spring 2.5中引入了注释,以便通过使用类路径扫描来消除xml bean的定义。@Bean是在3.0版本中引入的,可以用来@Configuration完全摆脱xml文件并使用java配置。是否可以重复使用@Component注释而不是引入@Bean注释?我的理解是,最终目标是在两种情况下都创建bean。
查看完整描述

3 回答

?
元芳怎么了

TA贡献1798条经验 获得超7个赞

@Component优先 用于元件扫描和自动布线。

什么时候应该使用@Bean

有时自动配置不是一种选择。什么时候?让我们假设您想要连接来自第三方库的组件(您没有源代码,因此您无法使用@Component注释其类),因此无法进行自动配置。

所述@Bean注释返回一个对象该弹簧应在应用程序上下文豆注册。方法主体承担负责创建实例的逻辑。


查看完整回答
反对 回复 2019-07-31
?
不负相思意

TA贡献1777条经验 获得超10个赞

让我们考虑一下我需要具体的实现,具体取决于一些动态状态。 @Bean对于那种情况是完美的。

@Bean@Scope("prototype")public SomeService someService() {
    switch (state) {
    case 1:
        return new Impl1();
    case 2:
        return new Impl2();
    case 3:
        return new Impl3();
    default:
        return new Impl();
    }}

然而,没有办法做到这一点@Component


查看完整回答
反对 回复 2019-07-31
  • 3 回答
  • 0 关注
  • 1068 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信