JAX-RS Response.ok(Object).build不返回空字段(“”)

时间:2019-05-06 15:23:28

标签: java rest java-ee jax-rs

我有一个对象myObject,其中许多值设置为nullfirst设置为502296999,而second为空("" )。作为回应,我有:

"Phones": {
            "First": "502296999"
}

我想收到这个消息:

 "Phones": {
                "First": "502296999",
                "Second": ""

}

我以这种方式建立响应:

return Response.ok(myObject).build();

是否有一种简单的方法也可以将具有值""的字段放入响应中?还是强制Response.ok(myObject).build()始终添加这两个字段,无论内部是什么?

1 个答案:

答案 0 :(得分:0)

我在调解器中的其他功能很差,我正在检查值是empty还是null却没有显示。默认情况下,Response.ok(object).build()还返回空值:

"Phones": {
            "First": "502296999",
            "Second": ""
}

我发现可以通过注释@JsonInclude对其进行配置。此处的示例:How to tell Jackson to ignore a field during serialization if its value is null?