目前我的应用程序有一个类,如下所示
@JsonInclude(JsonInclude.Include.NON_NULL)
public class Employee {
Department department;
String firstName;
String lastName;
String address;
String phoneNumber;
}
我正在捕获日志中的员工对象,我将对象转换为JSON。我能够将对象转换为JSON,但空值不会进入JSON。
我试过以下
objectMapper.setSerializationInclusion(JsonInclude.Include.ALWAYS);
generator.setCodec(objectMapper);
generator.writeObjectField(fieldName, argument);
但是无法获取JSON中字段的空值。我如何得到它们?
答案 0 :(得分:0)
您可以复制ObjectMapper
并更改其中的一些选项,在这种情况下,您可以忽略注释:
ObjectMapper mapperIgnoringAnnotations = mapper.copy()
.disable(MapperFeature.USE_ANNOTATIONS)
.setSerializationInclusion(JsonInclude.Include.ALWAYS)
.setVisibility(PropertyAccessor.FIELD, JsonAutoDetect.Visibility.ANY)
然后使用此修改后的ObjectMapper
序列化此类,但使用其他类的标准类。如果Employee
包含许多您想要考虑的其他注释,则不方便。