【问题标题】:Using FeignClient to get data from external service使用 FeignClient 从外部服务获取数据
【发布时间】:2020-11-25 08:33:28
【问题描述】:

我正在尝试从外部服务获取数据并将其放入数据库。

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

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

}

我在我的应用程序上添加了@EnableFeignClients 注释。我知道假客户做什么。

最好的方法是什么?

【问题讨论】:

  • build the structure 是什么意思?
  • 基础设施 :) 错字。
  • 那么你到底想要什么,你的问题是什么?
  • 在这种情况下我实际上不知道如何将它放入数据库中..
  • 您是否已经声明了有关您的数据库的任何内容?像一个存储库?

标签: spring-boot spring-cloud spring-cloud-feign


【解决方案1】:

您可以将feign clientrepository 注入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);
  }
}

【讨论】:

  • 请添加@Autowired。
  • @Milgo 其实没必要。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2018-05-27
  • 2015-11-24
  • 2015-04-18
相关资源
最近更新 更多