使用非静态工厂方法的Spring实例化

使用非静态工厂方法的Spring实例化,spring,configuration,Spring,Configuration,我想在Spring配置中创建bean2: beans.xml: <bean id="bean1" class="..."> <property name="..." ref="..." /> </bean> bean2=bean1.foo() 非常感谢您的帮助 谢谢, Behzad您可以使用实例工厂方法。请参阅Spring文档中的 <bean id="bean2" factory-bean="bean1" factory-method="f

我想在Spring配置中创建bean2:

beans.xml:

<bean id="bean1" class="...">
    <property name="..." ref="..." />
</bean>

bean2=bean1.foo()

非常感谢您的帮助

谢谢,
Behzad

您可以使用实例工厂方法。请参阅Spring文档中的

<bean id="bean2" factory-bean="bean1" factory-method="foo"/>

如果您使用的是批注,则可以使用:

@Configuration
public class AppConfig {

    @Bean
    @Lazy
    public Bean1 getBean1(){
        return Bean1.getInstance();
    }

    @Bean
    public Bean2 getBean2() {
        return this.getBean1().newBean2(); //in your example is this.getBean1().foo();
    }

}

您需要注释配置还是通过XML?我将发布如何使用注释来实现这一点。非常感谢你,这正是我所需要的:)是的,谢谢你,但我正在使用xml配置Eugene的答案正是我想要的。没关系,我只为那些需要使用注释来实现这一点的人提供这个答案。谢谢你的回答。