我可以用什么在Java中创建REST客户端?

6

可能重复:
Java的REST客户端?

如果我想使用Java创建REST客户端,应该使用什么?

我可以使用CXF吗?

7个回答

7

Jersey客户端太大了,我猜... - gumuruh

7

抱歉 - 我看到你说了 REST "客户端"。我的错误。Restlet 用于创建服务器端实现。我还使用 Http Unit 来测试这个服务。 - Vinnie
3
实际上,Restlet是一个完整的API和实现,用于创建RESTful服务器和客户端。我使用Restlet编写了许多REST客户端,并取得了出色的成果。 - Avi Flax

3

HttpClient和URLConnection都是不错的选择,但我建议使用它们与Restlet API一起使用,这是一个比这些低级类更高一级的抽象层。Restlet允许您编写与任何特定客户端库解耦的代码,然后使用其“连接器”范例随意切换所需的客户端库。 - Avi Flax
Apache CXF 2.2.1 还包含一个 REST 客户端。请参见:http://cwiki.apache.org/CXF20DOC/jax-rs.html#JAX-RS-ClientAPI - Daniel Kulp

0
使用Eclipse的HTTP4e REST客户端插件。它易于使用,并且具有Java/C#/Ruby/Flex/ActionScript等语言的一键代码生成功能。

你的链接已经失效了。 还有其他的替代方案吗?我正在寻找适用于移动设备的put、get、delete和异步技术。 :D - gumuruh

0

仅适用于服务器端,可能不适用于客户端。 - Larry Cable

0

我认为这取决于应用程序和您的环境,但我发现resteasy非常易于使用(因为它是如此声明性)和可配置。请参阅第30章以获取客户端文档。


0

我尝试使用此链接中提供的示例 http://cxf.apache.org/docs/jax-rs-client-api.html,但我遇到了一个问题:接口或实现可能并不总是可用于客户端生成代理。

我还尝试使用wadl2java来查看是否生成了客户端。但CXF 2.6版本没有创建客户端类。

在某些具体实现更改编写客户端的方式之前,我很满意HTTPclient调用。

注意:我们仅使用Java的CXF,因此仅尝试使用CXF。其他实现可能会产生不同的结果。


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