有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java使用参数动态创建原型对象的实例

我需要在代码执行期间“动态”创建对象的原型范围实例

我知道查找方法将是一个很好的解决方案:

http://static.springsource.org/spring/docs/3.0.x/spring-framework-reference/html/beans.html#beans-factory-lookup-method-injection

<!-- a stateful bean deployed as a prototype (non-singleton) -->
<bean id="command" class="fiona.apple.AsyncCommand" scope="prototype">
<!-- inject dependencies here as required -->
</bean>

<!-- commandProcessor uses statefulCommandHelper -->
<bean id="commandManager" class="fiona.apple.CommandManager">
<lookup-method name="createCommand" bean="command"/>
</bean>

我可以将参数设置为createCommand方法吗


共 (1) 个答案

  1. # 1 楼答案

    我认为您不能,因为容器不知道如何处理该参数。你认为它和它有什么关系?lookup方法仅从容器中获取对象的新实例。因此,它在返回之前注入了所有依赖项

    如果您想传递一个额外的参数,您可以在获得实例后传递。例如:

    Foo someParam = ...;
    CommandManager manager = createCommand();
    manager.doSomething(someParam);