我正在尝试研究REST服务方法如何使用Jersey。
在创建和访问REST服务时,我提出了两个选项。 我有6个参数,都是字符串
我可以理解第一个选项将是最快的,但是有人知道它比第二个选项快多少,并且它是一种安全有效的方法。
由于
答案 0 :(得分:2)
如果您想要逗号分隔的字符串,则必须编写自己的MessageBodyReader / Writter。此外,你需要确保参数本身不包含逗号等。不是说它会是一个阻止者 - 只是注意到了。
您还可以使用Jettison使用低级JSON编组/解组 - 这也应该非常快。或者使用杰克逊。请参阅Jersey user-guide中的各种JSON映射选项。
为了完整性,另一种选择可能是使用Form(它本质上是String-> List的映射) - 如果你使用它,不需要特殊的MessageBodyReader / Writter - Jersey会为你处理它。您只需要使用@ Produce / @ Consume(“application / www-form-urlencoded”)注释您的方法。
答案 1 :(得分:1)
注意:我是 EclipseLink JAXB (MOXy) 负责人,也是JAXB 2(JSR-222)专家组的成员。
在Jersey中使用JAXB实现将为您提供传递XML或JSON消息的选项,这些消息很容易让许多客户端进行交互。为了获得未知的性能增益而发明自己的格式很可能是不必要的微观优化。
以下是我使用Jersey& amp;在GlassFish中使用MOXy: