我有一个使用简单JSON对象的rest API,即:{ "prop": "value" }
@Consumes(MediaType.APPLICATION_JSON)
public Response apiName(@HeaderParam("field1") String field1, JsonElement payload){
...
}
我不想为这个API或我稍后将拥有的其他API创建POJO。相反,Jersey/Gson是否有一种自动的方法将有效负载反序列化为通用的JsonElement/JsonObject?
我知道我可以做
new Gson().fromJson(payload,JsonObject.class)
在每个API的开始,但我确信有一个自动的方法来实现这一点,但我找不到任何。所有的文档/视频解释这一点,他们使用的是POJO。如果Jackson是更好的这一点,请让我知道。我不受Gson的约束。
我尝试了JsonElement和JsonObject,对于这两个元素,我得到:无法构造com.google.gson.jsonElement的示例(不存在创建者,如默认构造器):抽象类型需要Map到具体类型,具有自定义反序列化程序,或者包含其他类型信息
1条答案
按热度按时间dtcbnfnu1#
我不确定Gson,但Jackson肯定会工作。