我们有一个即将投入生产的Spring项目。目前,该项目使用的是Apache Http Client
。有一种想法是使用RestTemplate
作为HttpClient
。
我正在深入研究,希望看到与Apache's
相比,使用RestTemplate
有什么显著的优势。此外,了解HTTP传输在其实现中执行RestTemplate是一件很有趣的事情。Apache Http客户端已被多个小组使用多年,具有良好的口碑。
我们会冒着迁移到RestTemplate
的风险吗
此外,此blog指出需要为生产配置RestTemplate,尽管配置很少。
谢谢
发布于 2015-07-18 04:14:43
RestTemplate和HttpClient不在相同的抽象级别上运行。
HttpClient是一个使用超文本传输协议进行通信的通用库,而RestTemplate是一个更高级别的抽象,处理实体的JSON/XML转换等。
RestTemplate delegates to a ClientHttpRequestFactory和one of the implementations of this interface使用Apache的HttpClient。
因此,如果目标是与Restful API通信,而您仍然想使用HttpClient,那么您可以在HttpClient上使用RestTemplate。
请注意,我刚才所说的内容正是您链接到的博客所解释的:
因此,解决方案是使用org.springframework.http.client.HttpComponentsClientHttpRequestFactory,,它是一个ClientHttpRequestFactory,将请求的创建委托给HttpClient。
https://stackoverflow.com/questions/31483874
复制相似问题