fastjson.toJSONString字段排序

fastjson.toJSONString字段排序
强烈推介IDEA2021.1.3破解激活,IntelliJ IDEA 注册码,2021.1.3IDEA 激活码  

大家好,我是架构君,一个会写代码吟诗的架构师。今天说一说fastjson.toJSONString字段排序,希望能够帮助大家进步!!!

由于fastjson.toJSONString默认按字符字母排列顺序输出的,在有些特殊场景下可能不满足我们的要求,需要定制。

官方文档中提到自定义序列化有三中方式,需要1.1.42以上版本才支持:

<dependency>
     <groupId>com.alibaba</groupId>
     <artifactId>fastjson</artifactId>
     <version>1.2.35</version>
</dependency>

1、使用@JSONField配置
可以把@JSONField配置在字段或者getter/setter方法上,其中ordinal参数即顺序,值越小越靠前。例如:
 public class VO {

      @JSONField(ordinal = 1, name = "ID")
      private int id;
 @JSONField(ordinal = 2)
 private String name;
 }
或者
 public class VO {

      private int id;
 
      @JSONField(name="ID")
      public int getId() { return id;}

      @JSONField(name="ID")
      public void setId(int value) {this.id = id;}
 }
 
2、使用@JSONType配置
和JSONField类似,但JSONType配置在类上,而不是field或者getter/setter方法上。
@JSONType(orders:{"id","name"})
public class VO {

private int id;
private String name;
}

本文来源huayang183,由架构君转载发布,观点不代表Java架构师必看的立场,转载请标明来源出处:https://javajgs.com/archives/17942

发表评论