如何实现Spring Rest客户端
问题描述:
Spring包含一些很好的指导,如何为基于JPA的pojo/data repository设置简单的服务。不幸的是,我找不到客户端的实现或一个很好的例子,如何通过Java本身访问这个服务。在这个例子中,只显示了基本的卷曲访问。也许我错过了一些基本的基础知识,但在WEB中,我只找到了一些基本的Rest例子,也是Spring本身的一个consuming guide。恕我直言,这些都是相当低的水平,我正在寻找更复杂的注解驱动实施的可能性。如何实现Spring Rest客户端
答
为什么不在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);
}
哦,来吧,当我在谷歌键入“弹簧安置客户端例如:”我得到了很多的休息客户的例子。 – Kamil
@Kamil对不起,我已经发现了一些简单的例子,如何联系和阅读JSON/Rest资源,但是我正在寻找更高层次的方法。我会调整我的问题。 – Thomas