Использование FeignClient для получения данных из внешнего сервиса - PullRequest
0 голосов
/ 05 августа 2020

Я пытаюсь получить данные из внешней службы и поместить их в базу данных.

@FeignClient(value = "name-feign", url = "http://localhost:8081")
public interface Client{

    @PostMapping("/Efforts")
    List<EffortsResponse> getAllEfforts();

}

Я добавил аннотацию @EnableFeignClients в свое приложение. Я знаю, что делают ложные клиенты.

как лучше всего это сделать?

1 Ответ

2 голосов
/ 05 августа 2020

Вы можете вставить feign client и repository в service.

В service должен быть метод вроде этого:

@Service
public class Service {
  private final Client client;
  private final Repository repository;

  public Service(Client c, Repository r) {
    this.client = c;
    this.repository = r;
  }

  public yourMethod() {
    List<EffortsResponse> items = client.getAllEfforts();
    //some transformation: items => entities
    respository.saveAll(entities);
  }
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...