忽略字段(设置某些字段不出现在json中,或不需要请求时给出)
deprcated
, 改用field.ignore
#Support for Jackson annotations
json.rule.field.ignore=@com.fasterxml.jackson.annotation.JsonIgnore#value
#Support for Gson annotations
json.rule.field.ignore=!@com.google.gson.annotations.Expose#serialize
TestJsonIgnoreBean.java
public class TestJsonIgnoreBean {
@Expose(serialize = true)
private Long shouldNotIgnoreForGson;
@Expose(serialize = false)
private Long shouldIgnoreForGson;
@JsonIgnore(false)
private Long shouldNotIgnoreForJackson;
@JsonIgnore
private Long shouldIgnoreForJackson;
//constructors...
//getters...
}
名称 | 类型 | 是否必须 | 默认值 | 备注 | 其他信息 |
---|---|---|---|---|---|
shouldNotIgnoreForGson | integer | 非必须 | mock: @natural(0,10000) | ||
shouldNotIgnoreForJackson | integer | 非必须 | mock: @natural(0,10000) |
忽略指定名称的字段:
配置如下
# ignore field 'log'
json.rule.field.ignore=log
将忽略如下字段
private String log;
忽略指定类型的字段:
配置如下
# ignore field 'log' typed xxx.xxx.Log
json.rule.field.ignore=groovy:it.type().name()=="xxx.xxx.Log"
将忽略如下字段
private Log xxx;
忽略指定modifier
的字段:
配置如下
#ignore transient field
json.rule.field.ignore=groovy:it.hasModifier("transient")||it.hasModifier("protected")
将忽略如下字段
private transient Int xxx;
protected Long yyy;