0

嗨,我尝试谷歌搜索,但找不到我想要实现的解决方案。

将 json 映射到我们所做的 java 对象的示例

 @POST
 @Consumes(application/json)
 @Produces(application/json)
 public Response createUpdateDeleteManualClinicalData(MyJavaPojo definedPojo) {
   // this maps any json to a java object, but in my case I am dealing with generic json structure
}

我想要实现的是将其保留为 json 对象本身

public Response createUpdateDeleteManualClinicalData(JSONObject json)

解决方法:我可以将数据作为纯文本获取并将其转换为 json。但这是我想避免的开销。

编辑:我愿意使用任何 Json 库,如 JsonNode 等……只要我直接获得 Json 对象结构,而没有从我这边对 Json 的 String 开销。这应该是常见的用法,或者我在这里遗漏了一些核心概念。

4

3 回答 3

2

这是一个直接的解决方案,我碰巧忽略了……我的错。泽西比我想象的要聪明得多……很想知道这些层下会发生什么魔法

@POST
 @Consumes(application/json)
 @Produces(application/json)
 public Response createUpdateDeleteManualClinicalData(JsonNode jsonNode) {
//jsoNode body casted automatically into JsonNode
}
于 2013-10-23T01:16:30.987 回答
0

If you are using the same configuration as web.xml setup gists for Jersey1 and Jackson2, then you may do as below. This is a possible alternative than using JSONObject

@POST
@Path("/sub_path2")
@Consumes(MediaType.APPLICATION_JSON)
@Produces(MediaType.APPLICATION_JSON)
public Map<String,Object> saveMethod( Map<String,Object> params  ) throws IOException {

    // Processing steps

    return params;
}
于 2013-10-23T01:07:51.523 回答
0

您使用的 web.xml 配置是什么?它与Jersey1 和 Jackson2 的 web.xml setup gists 类似吗?

于 2013-10-22T10:30:18.953 回答