解决FastJSON反序列化顺序问题

您所在的位置:网站首页 fastjson保证字段顺序 解决FastJSON反序列化顺序问题

解决FastJSON反序列化顺序问题

2024-04-14 16:08| 来源: 网络整理| 查看: 265

fastjson默认在序列化时是按照字段的字母顺序进行序列化的,这样序列化出来的Json数据中字段的顺序就与类中定义的字段顺序不一致了。默认按字母排序序列化的速度会快一些,但是有时候我们并不希望按照字母顺序进行序列化。

现在提供几种方式来支持自定义序列化顺序。

自己设置排序规则,通过JSONType的orders来指定排序规则:// 设置排序规则 @JSONType(orders={"user_name","passwd"}) public class LoginBean { // 设置别名user_name @JSONField(name="user_name") private String userName; // 账户 private String passwd; // 密码 } 通过JSONField的ordinal来指定顺序,这个特性需要1.1.42以上版本public static class VO { @JSONField(ordinal = 3) private int f0; @JSONField(ordinal = 2) private int f1; @JSONField(ordinal = 1) private int f2; } 指定序列化的排序方式,使用Feature.OrderedField按照字段排序JSON.parseObject("...", Feature.OrderedField) 官方提供的方式是配置JSONType.alphabetic的值为false,但是好像不太好用@JSONType(alphabetic = false) public static class B { public int f2; public int f1; public int f0; }

欢迎扫码关注公众号,更好的交流

欢迎扫码关注公众号,更好的交流



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3