我有一个简单的POJO类,它扩展了另一个简单的POJO类.我正在使用它com.sun.jersey.json.impl.provider.entity.JacksonProviderProxy来将这些POJO类中的属性编组为JSON.但是,当我将一些属性设置为POJO时null,它会将这些属性输出为字符串,null而不是根本不输出它.
例如.
{
Person:
[{
"firstName":"John"
"lastName":"null"
}]
}
Run Code Online (Sandbox Code Playgroud)
代替:
例如.
{
Person:
[{
"firstName":"John"
}]
}
Run Code Online (Sandbox Code Playgroud)
Pro*_*uce 18
有多种选项可用于抑制具有空值的属性的序列化,具体取决于使用的Jackson版本以及是否ObjectMapper可以直接配置.
使用Jackson 1.1+,可以直接访问配置ObjectMapper,你可以调用setSerializationInclusion(Include.NON_NULL).
或者,可以注释(类)类型,其具有的属性,该空的属性序列化是将被抑制,用@JsonSerialize().include=Inclusion.NON_NULL
使用Jackson 2+,而不是@JsonSerialize注释,使用@JsonInclude(Include.NON_NULL).
| 归档时间: |
|
| 查看次数: |
6432 次 |
| 最近记录: |