带参数问题的Spring init方法

时间:2015-04-03 12:29:51

标签: java spring servlets dependency-injection

所以我学习了Spring依赖注入并且遇到了一个问题。我有两个类......一个是 Run 类,另一个是构建器类。构建器类有一个静态方法abc ,它接受多个参数并返回类型的对象。 它看起来像这样:

public class Run{
    private final Check check;

    public Run(Check check){
        this.check = check;

    }
    public Check getCheck() {
        return check;
    }
}

public class Builders {
    public static Run abc(multiple arguments) {
        Check check = ProxyImplClass.createCheck(multiple arguments);
        return new Run(check);
    }
}

我只需要在应用程序启动时调用下面提到的语句一次。

运行run = Builders.abc(....接受多个参数....);

如何使用spring xml做到这一点?如果类文件中需要进行一些更改,那么请注意这一点,因为我对这个Spring框架很新。

注意:.... abc方法中的多个参数仅表示该方法需要多个参数。

1 个答案:

答案 0 :(得分:2)

您可以使用factory-method <bean>属性执行此操作。要使用其他类的static工厂方法,请使用class属性指定包含该方法的类。

您希望传递给该方法的任何参数都在<constructor-arg>标记:

<bean id="run" class="pkg.Builders" factory-method="abc">
    <constructor-arg type="..." value="...">
    <constructor-arg type="..." value="...">
</bean>