使用FeignClient从外部服务获取数据
Using FeignClient to get data from external service
我正在尝试从外部服务获取数据并将其放入数据库。
@FeignClient(value = "name-feign", url = "http://localhost:8081")
public interface Client{
@PostMapping("/Efforts")
List<EffortsResponse> getAllEfforts();
}
我在我的应用程序中添加了@EnableFeignClients 注释。我知道假装客户做什么。
最好的方法是什么?
您可以将 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);
}
}
我正在尝试从外部服务获取数据并将其放入数据库。
@FeignClient(value = "name-feign", url = "http://localhost:8081")
public interface Client{
@PostMapping("/Efforts")
List<EffortsResponse> getAllEfforts();
}
我在我的应用程序中添加了@EnableFeignClients 注释。我知道假装客户做什么。
最好的方法是什么?
您可以将 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);
}
}