Sping Boot (2.7.16)
我有许多实现Task
接口的组件(每个组件都标注为@Component
)。
在我的服务中,我希望自动连接一系列任务,最好是按照特定的顺序
@Autowired
// Ideally, sequence like
@Qualifier("firstTask"), @Qualifier("secondTask"), @Qualifier("thirdTask")
private List<Task> tasks;
字符串
这样我就可以在某个时候运行它们。例如,
tasks.foreach(task -> {
task.run();
});
型
我目前正在自动连接它们,并显式地示例化列表。
@Autowired
@Qualifier("firstTask")
private Task firstTask;
@Autowired
@Qualifier("secondTask")
private Task secondTask;
@Autowired
@Qualifier("thirdTask")
private Task thirdTask;
private List<Task> tasks = List.of(firstTask, secondTask, thirdTask);
型
但是能够直接自动连接列表将是非常棒的。
1条答案
按热度按时间ubby3x7f1#
(原题我写)
您可以
@Autowired
一个组件列表字符串
会起作用的。
但是,如果你想定义序列,你不能在服务中这样做,你需要在每个组件上应用
@Order
注解(在我看来这是错误的,但这就是它的工作方式)。所以,
型
、
型
得双曲正弦值.
型