use*_*078 3 java json jackson jersey-2.0
我正在尝试从 json 中删除所有空值。
{
"key" : null
}
Run Code Online (Sandbox Code Playgroud)
我用过了:
ObjectMapper mapper = new ObjectMapper();
mapper.setSerializationInclusion(Include.NON_NULL);
Run Code Online (Sandbox Code Playgroud)
这里的“key”是一个列表,所以当我使用上面的序列化选项时,json 会转换为:
{
"key" : []
}
Run Code Online (Sandbox Code Playgroud)
我希望 json 为:
{
}
Run Code Online (Sandbox Code Playgroud)
我不想使用
Include.NON_EMPTY
Run Code Online (Sandbox Code Playgroud)
因为我的项目中有其他 json,我需要显示空列表和 0 值键。当它是一个列表时,是否有任何方法可以删除空值键,就像处理字符串值一样?
我无法使用注释,因为类文件是使用 jaxb 从 xml 生成的。班级结构:
public class C1 {
protected List<C2> key;
public List<C2> getKey() {
if (key == null) {
key = new ArrayList<C2>();
}
return this.key;
}
}
Run Code Online (Sandbox Code Playgroud)
我已经被困了一段时间了。非常感谢任何帮助。提前致谢。
小智 6
要禁止使用null值序列化属性,
您可以ObjectMapper直接使用它进行配置。
mapper.setSerializationInclusion(Include.NON_NULL);
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
12830 次 |
| 最近记录: |