这篇简短的文章讨论了JAX-RS 2.0中对JSON-P的支持
JSON-P…?
JSON处理API (JSON-P)是Java EE 7中引入的。 它提供了用于处理JSON数据的标准API,并且与XML对应的JAXP非常相似。 JSON-B (JSON绑定)API已在Java EE 8中使用 。
在JAX-RS 2.0中支持JSON-P
JAX-RS 2.0 (也是Java EE 7的一部分)对JSON-P构件(如JsonObject , JsonArray和JsonStructure)提供了开箱即用的支持,即,每个符合JAX-RS 2.0的实现都将为这些对象提供内置的实体提供程序,使其在JAX-RS应用程序中无缝且轻松地交换JSON数据
一些例子
从您的JAX-RS资源方法发送JSON数组:
@GET
public JsonArray buildJsonArray(){return Json.createArrayBuilder().add("jsonp").add("jaxrs").build();
}
这是如何从客户端接受JSON有效负载的另一个示例
@POST
public void acceptJsonObject(JsonObject payload){System.out.println("theoad -- "+ payload.toString());
}
这些是非常简单的示例,但我希望您能理解...。
几件事要注意
- 无需编写自定义MessageBodyReader或MessageBodyWriter实现。 如前所述,JAX-RS实现免费为您完成!
- 此功能与能够在POJO上使用JAXB注释并交换有效负载的JSON版本(通过指定application / xml媒体类型)不同。 尽管我已经对此进行了试验,并观察到默认情况下GlassFish 4.1(Jersey)和Wildfly 8.x(RESTEasy)支持此功能,但这不是标准功能。
进一步阅读
- 官方JAX-RS规范文档 –美观,紧凑!
- 我以前有关Java EE 7和Java EE 8的一些文章
- 水族馆 :Oracle的Java EE福音派人士
干杯!
翻译自: https://www.javacodegeeks.com/2015/10/jax-rs-and-json-p-integration.html