我正在使用带有Moxy的Jersey 2.17,我有以下功能:
@Produces(APPLICATION_JSON)
@Restricted
public List<User> getFriends(
@PathParam("user") String user
) {
return userDAO.getFriends(user);
}
User.preferences是一个HashMap
。
对于几乎所有的对象,它都可以正常工作,除了HashMap
,它会被翻译成:
"preferences":{"entry":[{"key":{"type":"string","value":"language"},"value":{"type":"string","value":"en"}},{"key":{"type":"string","value":"country"},"value":{"type":"string","value":"US"}}]}
但我真正想返回的只是一个JavaScript对象,如下所示:
preferences:{"language":"en","country":"US"}
我该怎么做呢?
@JsonInclude(JsonInclude.Include.NON_NULL)
,或者不必注释所有类,您可以在ContextResolver
中配置ObjectMapper
。 - Paul Samsotha