Spring RestTemplate - BufferingClientHttpRequestFactory & SimpleClientHttpRequestFactory Spring RestTemplate - 缓冲客户端请求工厂和简单客户端请求工厂

11

我在使用Spring构建的某个Rest客户端中看到了以下代码。这个Rest客户端位于一个REST服务中,并调用另一个REST服务。这个语句的目的是什么?

return new BufferingClientHttpRequestFactory(new SimpleClientHttpRequestFactory())
1个回答

25

BufferingClientHttpRequestFactoryClientHttpRequestFactory的装饰器,RestTemplate使用它来创建促进HTTP通信的ClientHttpRequest。这个装饰器特别提供了对传出/传入流的缓冲。此包装器/装饰器还允许对响应体进行多次读取,如果仅使用SimpleClientHttpRequestFactoryHttpComponentsClientHttpRequestFactory而不使用此包装器,则无法执行此操作。

SimpleClientHttpRequestFactoryClientHttpRequestFactory的实现,它使用JDK设施(来自java.net包中的类),因此不依赖于第三方库,如另一个实现所需的Apache HttpComponents HTTP客户端HttpComponentsClientHttpRequestFactory


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接