3

我仍然看到人们使用 HttpURLConnection 与网站进行通信。这个论坛也有很多与 HttpURLConnection 相关的问题。现在,来自 apache 的 HttpClient 几乎可以实现 HttpURLConnection 可以实现的所有功能,而且代码更少、更干净、更高效。我的问题是,

  1. 作为开发人员,我们应该不鼓励使用 HttpURLConnection 吗?
  2. 是否有任何用例,其中 HttpURLConnection 的使用应该优于 HttpClient ?
4

2 回答 2

5

作为开发人员,我们应该不鼓励使用 HttpURLConnection 吗?

不,我不会那样看的。

是否有任何用例,其中 HttpURLConnection 的使用应该优于 HttpClient ?

对于HttpURLConnection工作做得足够好的非常简单的用例,为了几行更清晰的代码,我不会包含任何依赖项。

对于我要说的任何其他情况,请使用HttpClient:-)


这种推理适用于所有第 3 方 Java 库。如果这是一个有限的场景,并且如果标准 API 做得足够好,那就去吧。否则,请始终使用使您的生活更轻松的库。例如比较

  • Caldenar/Date与乔达时间
  • 标准 APICollection类 vs Guava / Apache Commons
  • 您选择的库与标准 Java 对应库。
于 2011-09-21T07:28:44.060 回答
2

如果你拥有完整的源代码,你应该更喜欢 HttpClient。它比 HttpURLConnection 好得多,提供更多功能并为您提供重定向等功能。

对于非常简单的情况,使用它可能是一种开销。也可能存在不允许您使用第三方库的情况。这些是我能想到的不喜欢 HttpClient 的唯一原因。

于 2011-09-21T07:28:15.953 回答