gpt4 book ai didi

Spring运行时对象/bean创建

转载 作者:行者123 更新时间:2023-12-02 03:41:39 26 4
gpt4 key购买 nike

我正在开发一个使用 spring 框架(v3.2.1)的项目,但由于我对 spring 的做事方式不熟悉,所以我目前遇到了以下问题......这将是如果有人能指出我正确的方向,那就太好了:

我正在尝试在运行时创建 Job 类的实例。 Job类本身使用了一些Job类中@Autowired的服务。由于 Autowiring 仅适用于 spring 容器控制下的对象.​​..我首先想到的是以下内容:

@Component
@Scope("prototype")
class Job{

@Autowired
MyService service

String name
String group
.
.
.

public Job(){

}

public Job(String name, String group){

this.name = name;
this.group = group;

}

public void start(){

//some code, use of service etc.
}

}

现在我可以通过调用 context.getBean("job") 使用应用程序上下文来获取新作业。新的作业实例是通过调用默认构造函数创建的,因此在获得新的作业实例后我必须设置名称和组参数:

Job j = context.getBean("job");

j.setName("Test");
j.setGroup("someGroup");
j.start()

我目前正在尝试弄清楚是否有某种方法可以指定在运行时创建作业实例的参数。这样我就可以实例化具有不同状态的作业类的新对象。

正如我上面提到的,我目前被困在这里,并且由于缺乏 Spring 经验,我很难找到实现这一目标的最佳方法。也许有一些普遍接受的方式或模式来做这些事情。如果有更多 Spring 经验的人能指出我正确的方向,那就太好了。

非常感谢!

最佳答案

关于Spring运行时对象/bean创建,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15389108/

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