项目提供两种不同的json格式的接口
问题描述原本的接口已经提供给了第三方,后续要提供一种标准化json,去掉了一些第三方系统没用的字段,但又不能影像原先已经对接好的接口.故使用了jackson自带的*@jsonView*注解,然后发现了接口中出现了同一个字段出现两种格式的key
@JSONField(serialize=false)
@JsonView(PublicView.class)
private String pCoNo;
原因分析:
当实体类中的属性定义成第一个单词仅由一个字母组成的时候,例如 pCoNo
序列化后的JSON会变为pcoNo 。 而因为需要在两个接口中展示不同的字段,故我使用了*@jsonView*注解,导致序列化的时候把该字段解析成了两种格式.
解决方案:
在字段的get方法上加 @JsonProperty注解
如果使用lombok则在字段上加 @JsonProperty注解
@JSONField(serialize=false)
@JsonView(PublicView.class)
@JsonProperty('pCoNo')
private String pCoNo;
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)