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

标签 java spring

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

例如。汽车.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;
        }
    } 
}

配置.xml:

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

最佳答案

像这样使用构造函数

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

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

关于java - 如何使用参数调用 Spring 工厂方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36569231/

相关文章:

Java:如何对对象列表进行排序?

java - java servlet中keystore和truststore的代码位置

java - 无法在图形布局中打开 XML 文件 : FakeAdapter cannot be cast to BaseAdapter

java - Spring 启动: How to add new Datasource at runtime

Spring Boot OAuth2 + JWT 和 UserDetailsS​​ervice

java - 如何在 Thymeleaf 中使用对象中包含的 HashMap 填充下拉列表?

java - 如何使用 junit mockito 覆盖匿名类重写方法

java - 如何通过反射luaj传递类 - java

java - 分析软件--跟随行动--这叫什么?

java - 本地主机、开发和生产的 Spring 数据源配置