在使用Jackson将对象转换为JSON时,如何不使用默认值对布尔属性进行编组

时间:2017-01-26 19:41:57

标签: java json jackson

使用RUN apk add --update \ python python-dev py-pip \ gcc musl-dev linux-headers \ augeas-dev openssl-dev libffi-dev ca-certificates dialog \ && rm -rf /var/cache/apk/* 不会使用默认值编组任何属性,但在这种情况下,我需要在JSON响应中使用默认值的int属性。

我想的一种方法是编写自定义序列化程序,而不是仅使用默认值编组布尔属性。对此还有其他方法吗?

1 个答案:

答案 0 :(得分:0)

mapper.setSerializationInclusion(Include.NON_DEFAULT)

进行上述配置将排除具有默认值的字段,即使您明确设置它们,因为无法检查默认情况下是否分配了值,还是显式分配了这些值。

在您的情况下,您只需要使用默认值排除布尔字段,最好的方法是使用布尔类而不是布尔基元,并保持空序列化关闭,以便它不被编组。