zl程序教程

您现在的位置是:首页 >  其他

当前栏目

fastjson.toJSONString字段排序

2023-03-20 14:53:26 时间

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; }