如何实现Spring Rest客户端

时间:2017-03-31 21:38:12

标签: spring-data-jpa spring-data-rest

Spring包含一些很好的指南,如何基于JPA为pojo/data repository设置简单服务。不幸的是,我找不到客户端实现或如何通过Java本身访问此服务的一个很好的示例。在该示例中,仅示出了基本卷曲访问。也许我错过了一些基本的基础知识但是在WEB中我只发现了一些基本的Rest示例以及Spring本身的consuming guide。恕我直言这些都是相当低级别的,我正在寻找更复杂的注释驱动实现的可能性。

1 个答案:

答案 0 :(得分:0)

为什么不在Feign的上下文中查看spring-cloud。它是一个声明性的Rest客户端,最初是在netflix上开发的,并且已成为spring-cloud的一部分。它还很好地集成了一些在spring-cloud环境中可用的服务发现解决方案。

http://projects.spring.io/spring-cloud/spring-cloud.html#spring-cloud-feign

  

Feign是一个声明性的Web服务客户端。它使写作网络   服务客户更容易。要使用Feign,请创建一个界面并进行注释   它。它具有可插入的注释支持,包括Feign注释   和JAX-RS注释。 Feign还支持可插拔编码器和   解码器。 Spring Cloud增加了对Spring MVC注释的支持   使用Spring Web中默认使用的相同HttpMessageConverters。   Spring Cloud集成了Ribbon和Eureka以提供负载平衡   使用Feign时的http客户端。

假装客户端看起来像这样:

@FeignClient("stores")
public interface StoreClient {
    @RequestMapping(method = RequestMethod.GET, value = "/stores")
    List<Store> getStores();

    @RequestMapping(method = RequestMethod.POST, value = "/stores/{storeId}", consumes = "application/json")
    Store update(@PathVariable("storeId") Long storeId, Store store);
}