fastjsonjava字段排序_fastjson⾃定义序列化竟然有这么多姿
势?
⼀、什么是fastjson?
fastjson是阿⾥巴巴的开源JSON解析库,它可以解析JSON格式的字符串,⽀持将Java Bean序列化为JSON字符串,也可以从JSON字符串反序列化到JavaBean。
⼆、如何使⽤
添加如下maven依赖即可:
三、fastjson默认序列化
fastjson⼊⼝类是com.alibaba.fastjson.JSON,⼀个最简单默认的序列化代码如下:
四、如何⾃定义序列化
fastjson⽀持多种⽅式⾃定义序列化。
1.使⽤序列化属性SerializerFeature
SerializerFeature常⽤属性如下:
常⽤的属性介绍完了,咱们先来看下效果,新建⼀个User类,代码如下:
运⾏类代码如下:
运⾏结果:
2.使⽤JSONField
JSONField是fastjson的⼀个注解,可以⽤在字段上,也可以⽤在getter/setter⽅法上⾯。
fastjson常用方法2.1 JSONField注解
注解主要内容如下:
2.2 JSONField注解配置⽅式
配置在字段上
配置在getter/setter上
使⽤format配置⽇期格式化
使⽤serialize/deserialize指定字段不序列化
使⽤ordinal指定字段的顺序
下⾯直接修改代码看下效果,修改后User类如下:
测试类运⾏结果如下:
通过运⾏结果可以看到,使⽤@JSONField注解变化如下:
id序列化后变成了_id
createDate格式化为yyyy-MM-dd
序列化后字段的顺序跟ordinal指定的⼀致
设置了serialize=false的字段age没有序列化
结果和预期⼀致,说明⾃定义序列化没有问题,到此fastjson⾃定义序列化的功能已经全部实现,有问题欢迎留⾔沟通哦!
本⽪是⼀个有着5年⼯作经验的程序员,关于Java,⾃⼰有做材料的整合,⼀个完整学习Java的路线,学习材料和⼯具。需要的伙伴可以私信我,发送“交流”后就可免费获取。对于学习Java有任何问题(学习⽅法,学习效率,如何就业)都可以问我。希望你也能凭⾃⼰的努⼒,成为下⼀个优秀的程序员!
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论