如何用参数调用Spring工厂方法

时间:2016-04-12 09:33:42

标签: java spring

假设我有一个带String参数的工厂方法,我想调用该方法,那么春天的代码是什么。

离。 Car.java

public class Car {

    public Car(){
        System.out.println("Car Instance...");
    }

    private static Car car=new Car();
    private static Audi audi=new Audi();
    private static Benz benz=new Benz();

    public static Car getCarInstance(String name){
        if(name.equalsIgnoreCase("audi")){
            return benz;
        }else if (name.equalsIgnoreCase("benz")){
            return audi;
        }else{
            return car;
        }
    } 
}

config.xml:

<bean id="car" class="com.dell.Car" factory-method="getCarInstance"></bean>

1 个答案:

答案 0 :(得分:2)

像这样使用构造函数arg

<bean id="car" class="com.dell.Car" factory-method="getCarInstance">
    <constructor-arg value="audi"/>
</bean>

NB。 constructor-arg元素用于构造函数和工厂方法