我想用下面这段简单的代码在spring boot中实现一个调度程序:
public class MyDispatcher{
@Autowired
private List<MyListener> listeners;
public void dispatch(){
listeners.foreach(listener -> listener.dispatch());
}是否可以添加我在上面列表中定义的每个侦听器?每个监听器都会这样做:
@Component
public class AListener implements MyListener{
....发布于 2020-03-25 15:45:27
是的,你可以用varargs来定义它。例如:
public interface A {}
@Component
public class B implements A{}
@Component
public class C implements A{}
public class D {
private final List<A> listeners;
@Autowired
public D(A ... listeners) {
this.listeners = Arrays.asList(listeners);
}
public void dispatch(){
listeners.foreach(listener -> listener.dispatch());
}
}发布于 2020-03-25 11:37:24
https://stackoverflow.com/questions/60841357
复制相似问题