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

Java 如何使用参数调用Spring工厂方法,java,spring,Java,Spring,假设我有一个带字符串参数的工厂方法,我想调用该方法,那么spring中的代码是什么 例如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 be

假设我有一个带字符串参数的工厂方法,我想调用该方法,那么spring中的代码是什么

例如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>

像这样使用构造函数arg

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


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

config.xml,在这种情况下,将加载所有bean。