JAX-RS将MediaType.APPLICATION_JSON绑定到java.util.Map

时间:2017-01-26 15:02:42

标签: java jax-rs

这可能太明显但不知何故我没有得到它。由于JSON有效负载不依赖于模式,我需要自己解析它。

该服务正在接收格式为JSON的数据。

@POST
@Consumes(MediaType.APPLICATION_JSON)
@Produces(MediaType.APPLICATION_JSON)
public String index(final String data) {
    return data;
}

按预期工作。我可以自己解析和处理复杂的JSON对象。但我宁愿调用该服务,让Jersey将JSON字符串转换为JSON对象的java.util.Map<String, Object>和JSON数组的java.util.Lists

@POST
@Consumes(MediaType.APPLICATION_JSON)
@Produces(MediaType.APPLICATION_JSON)
public String index(final Map<String, Object> data) {
    // process the serialised types
    return "{\"status\":\"Ok\"}";
}

很明显,如果我有结构化数据,我会实现class,但数据不会回复特定模式,所以我必须依赖集合。

问题:我可以发布JSON并让Jersey在Map<String, Object>java.util.List分别)转换JSON吗?

0 个答案:

没有答案