jackson序列化字段字母大小写及字段名重复

一:Jackson默认的属性发现规则将会查找到如下所述的属性:
1.所有被public修饰的字段(成员变量);
2.所有被public修饰的getter(即形如“getXxx()”的方法);
3.所有被public修饰的setter(即形如“setXxx(value)”的方法)。
字段名是通过get方法名转换过来的, 所以会出现字母大小写问题(当前几个都是大写的字母,都会转换成小写,直到不是大写为止,若小写后面还有大写,则保持大写。), 以及如果用@JsonProperty("")强制序列化为某个名称时, 如果不在get/set方法上加@JsonIgnore则会出现两个字段,一个首字母大写, 一个首字母小写。可以将属性用private修饰,在get方法上加@JsonProperty。
二:可以在实体类上加注解@JsonAutoDetect(fieldVisibility=JsonAutoDetect.Visibility.ANY, getterVisibility=JsonAutoDetect.Visibility.NONE)
1.JsonAutoDetect.Visibility.ANY : 表示所有字段都可以被发现, 包括private修饰的字段, 解决大小写问题;
2.JsonAutoDetect.Visibility.NONE : 表示get方法不可见,解决字段重复问题。
参考:https://blog.csdn.net/cosisis/article/details/81240386

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 136,169评论 19 139
  • 没有认清自己,把别人对自己的看法作为反映自己生活的一面镜子(虽然不愿意承认这一点)。 不会认为看书是思考,但书成了...
    geamy阅读 2,823评论 0 1
  • 躺在床上,迷迷糊糊地想起了大师。 前段时间,大师去了南昌的某个山沟沟的寺庙里参加了为期七天的短期修行,谓之,禅七。...
    王小二日记阅读 3,218评论 0 0
  • 昨晚听到一句话是这样说:‘’成功最重要的因素是偶然性,正确的时间出现在正确的地点。‘’ 细细品来果...
    天人身心合一阅读 2,224评论 0 2
  • 一树阳光 在枝桠间 流动 满地斑驳 在小径上 雀跃 引我望向 那幽寂的远 远方 那灵魂的故乡 可有我 最爱的家园 ...
    莲心曲阅读 1,796评论 0 1

友情链接更多精彩内容