gpt4 book ai didi

java - 使用参数动态创建 Prototype 对象的实例

转载 作者:行者123 更新时间:2023-12-02 08:09:49 26 4
gpt4 key购买 nike

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

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

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 方法设置参数吗?

最佳答案

我认为你不能,因为容器不知道如何处理该参数。你期望它能做什么? Lookup 方法仅获取对象的新实例,从容器中获取它。因此它在返回之前已注入(inject)所有依赖项。

如果您想传递附加参数 - 您可以在获取实例后执行此操作。例如:

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

关于java - 使用参数动态创建 Prototype 对象的实例,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7637843/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com