Spring-Boot - два экземпляра приложения в одном проекте

У меня есть SpringBoot приложение client-app.

И есть новое приложение main-app, в котором нужно запустить два экземпляра приложения client-app со своими реализациями интерфейса.

client-app

@Service
public class Service { }

interface Settings {
  String getParam();
}
@Component
public class Client {

  @Autowired
  private Service service;

  @Autowired
  private Settings settings;

  ...

 }

main-app

@Component
public LeftBrigeSettings implements Settings {
  
  public String getParam() {
    return "left";
  }
}
@Component
public class LeftBrige {

  @Autowired
  private Client clientForLeftBrige;

}
@Component
public RightBrigeSettings implements Settings {
  
  public String getParam() {
    return "right";
  }
}
@Component
public class RightBrige {

  @Autowired
  private Client clientForRightBrige;

}

Как мне настроить спринг так, чтоб:

  • LeftBrige работал со своим экземпляром Client, и у него Client работал бы со своей реализацией интерфейса LeftBrigeSettings;
  • RightBrige работал со своим экземпляром Client, и у него Client работал бы со своей реализацией интерфейса RightBrigeSettings;
  • у каждого экземпляра Client так же были бы свои экземпляры всех бинов на подобие Service, которые есть в приложении client-app;

Ответы (0 шт):