如何实现Spring Rest客户端

问题描述:

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

+0

哦,来吧,当我在谷歌键入“弹簧安置客户端例如:”我得到了很多的休息客户的例子。 – Kamil

+0

@Kamil对不起,我已经发现了一些简单的例子,如何联系和阅读JSON/Rest资源,但是我正在寻找更高层次的方法。我会调整我的问题。 – Thomas

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

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

假死是一种声明Web服务客户端。它使得编写web 服务客户端更容易。使用Feign创建一个接口并注释它。它具有可插入的注释支持,包括Feign注释 和JAX-RS注释。 Feign还支持可插拔编码器和解码器。 Spring云增加了对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); 
}