【问题标题】:Anonymous bean in named Spring @Service名为 Spring @Service 中的匿名 bean
【发布时间】:2013-02-09 00:47:22
【问题描述】:

如何在命名的 Spring Service 中指定匿名内部 bean?

@Service("myNamedService")
public class myNamedServiceClass  {

    private InnerBeanType innerBean;

    @Autowired
    public void setInnerBean(InnerBeanType innerBean) {
        this.innerBean = innerBean;
    }

}

我基本上是在尝试实现以下 Spring XML 接线的等价物:

<bean name="myNamedService" class="somePackage.myNamedServiceClass">
    <property name="innerBean">
        <bean class="somePackage.InnerBeanType"/>
    </property>
</bean>

【问题讨论】:

    标签: java spring spring-mvc dependency-injection


    【解决方案1】:

    我认为使用纯注释等效是不可能的。您可以使用@Configuration,但如果目的是不以这种方式将innerBean 公开为可见bean:

    @Bean
    public MyNamedServiceBean myNamedServiceBean(){
      MyNamedServiceClass myNamedServiceBean = new MyNamedServiceClass();
      myNamedServiceBean.setInnerBean(new InnerBeanType());
      return myNamedServiceBean;
    }
    

    【讨论】:

      猜你喜欢
      • 2018-04-02
      • 2012-04-10
      • 1970-01-01
      • 2020-07-04
      • 1970-01-01
      • 2011-12-23
      • 2014-08-09
      • 2021-10-27
      • 1970-01-01
      相关资源
      最近更新 更多