是的,这个问题又来了...
我设计了一个批处理系统,它调用ActionService的notify方法,而在notify方法中,根据调用方式,会调用batch service的create方法。
示例代码块如下:
@Service
public class BatchService{
private final BatchRepository batchRepository;
private final ActionService actionService;
public Batch create(Batch batch){
return batchRepository.save(batch);
}
public void triggerNotifiers(){
...
actionService.notify(...);
...
}
}
@Service
public class ActionService{
private final ActionRepository actionRepository;
private final BatchService batchService;
public void notify(...){
...
if(/*some special cases*/)
batchService.create(...);
...
}
}
批处理服务的功能是调用操作服务的通知方法。根据传入的通知数据,操作服务可以创建相应的未来通知。
因此它们之间相互依存。
您认为有更好的方式/逻辑/设计来实现这个功能吗?