Bry*_*ung 6 json jax-rs jackson
我们正在使用JaxRS和Jackson向我们的客户发送数据.由于客户端是Javascript,如果没有该属性的有效值(默认情况下JaxRS默认),我们实际上不需要发送空值或空数组.有没有解决的办法?
一个例子.JaxRS发送此信息:
{"prop1":[],"prop2":null,"prop3":"foo"}
我们可以在哪里得到
{"prop3":"foo"}
有多种方法可以实现这一目标,具体取决于:注释@JsonSerialize(include=JsonSerialize.Inclusion.NON_NULL)是一种方式.或者,因为您还想删除空列表,数组,所以将NON_NULL更改为NON_EMPTY.
也可以将其配置为默认行为; 在杰克逊1.9:
mapper.setSerializationConfig(mapper.getSerializationConfig().withSerializationInclusion(
JsonSerialize.Inclusion.NON_EMPTY));
Run Code Online (Sandbox Code Playgroud)
在Jackson 2.0中,有点简单:
mapper.setSerializationInclusion(JsonSerialize.Inclusion.NON_EMPTY);
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
10328 次 |
| 最近记录: |