@JsonProperty字段以及gettersetter的注释

@JsonProperty字段以及gettersetter的注释,第1张

@JsonProperty字段以及getter / setter的注释

根据一些测试,我发现与属性名称不同的任何一个都会生效:

例如。考虑对您的情况进行一些修改:

@JsonProperty("fileName")private String fileName;@JsonProperty("fileName")public String getFileName(){    return fileName;}@JsonProperty("fileName1")public void setFileName(String fileName){    this.fileName = fileName;}

这两个

fileName
字段,方法
getFileName
,有正确的属性名称
fileName
,并
setFileName
具有不同的一个
fileName1
,在这种情况下,杰克逊将寻找一个
fileName1
在反序列化的点JSON属性,会创建一个名为属性
fileName1
的序列化的地步。

现在,在您的案例中,三个@JsonProperty都与默认属性名有所不同

fileName
,它只会选择其中一个作为attribute(
FILENAME
),并且三个属性中的任何一个都不相同,这将引发异常:

java.lang.IllegalStateException: Conflicting property name definitions


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/5674115.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-16
下一篇 2022-12-16

发表评论

登录后才能评论

评论列表(0条)

保存