我有一个用户类,我想使用 Jackson 将其映射到 JSON。
public class User {
private String name;
private int age;
private int securityCode;
// getters and setters
}
我使用 - 将其映射到 JSON 字符串
User user = getUserFromDatabase();
ObjectMapper mapper = new ObjectMapper();
String json = mapper.writeValueAsString(user);
我不想映射 securityCode
变量。有什么方法可以配置映射器以使其忽略此字段?
我知道我可以编写自定义数据映射器或使用 Streaming API,但我想知道是否可以通过配置来实现?
原文由 sonicboom 发布,翻译遵循 CC BY-SA 4.0 许可协议
你有两个选择:
杰克逊在田间工作。所以,你可以只删除你想在 JSON 中省略的字段的 getter。 (如果你不需要在其他地方吸气剂。)
或者,您可以在该字段的 getter 方法上使用 Jackson 的
@JsonIgnore
注释, 结果 JSON 中没有这样的键值对。