0

名前付き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>
4

1 に答える 1

0

純粋な注釈を使用した同等のものは不可能だと思います。ただし、この方法で目に見える Bean として@Configuration公開しないことが目的である場合は、次のように使用できます。innerBean

@Bean
public MyNamedServiceBean myNamedServiceBean(){
  MyNamedServiceClass myNamedServiceBean = new MyNamedServiceClass();
  myNamedServiceBean.setInnerBean(new InnerBeanType());
  return myNamedServiceBean;
}
于 2013-02-09T01:14:24.937 に答える