当前位置: 首页 > 知识库问答 >
问题:

如何保留POJO[duplicate]中定义的JSON响应顺序

上官凯泽
2023-03-14

我有一个POJO类A,我希望字段按照我定义的顺序,但是“1800号”在响应中出现在最后,因为它以数字开头。我如何避免这种情况?

 @JsonInclude(JsonInclude.Include.NON_NULL)
 public class A {
    private String name;
    private String age;
    private String dept;
    @JsonProperty("1800number")
    private String _1800number;
    private String email;
 } 

这就是我得到回应的方式

{
  "name": "Mark",
  "age": "52",
  "dept": "Civil",
  "email": "mark@gmail",
  "1800number": "12345"
}

我在gradle中使用以下库

 compile('com.fasterxml.jackson.core:jackson-annotations:2.8.3')
 compile('com.fasterxml.jackson.core:jackson-databind:2.8.3')

共有1个答案

葛季萌
2023-03-14

使用@JsonPropertyOrder注释:

@JsonPropertyOrder({ "name", "age", "dept", "1800number", "email" })
public class A {
    private String name;
    private String age;
    private String dept;
    @JsonProperty("1800number")
    private String _1800number;
    private String email;
 } 
 类似资料:
  • 我使用Spring设置,使用json映射转换器将POJO类作为json发送回客户端。 例如。: 这将返回例如类似于客户端的内容: 我想截取所有控制器操作,将json包装成如下内容: 最好的方法是什么?

  • 如何从改造和存储到java类并访问某个地方来读取此响应??

  • 使用此JSON,自动JSON到POJO严重失败。 请注意,不同请求的项目数量不同。在这里,我将包含两项JSON响应。 这个JSON对象的POJO会是什么样子?

  • 问题内容: 我注意到JSON对象中元素的顺序不是原始顺序。 JSON列表的元素呢?他们的订单得到维护吗? 问题答案: 是的,JSON数组中元素的顺序得以保留。从RFC 7159开始-JavaScript对象表示法(JSON)数据交换格式 (重点是我的): 对象是零个或多个名称/值对的 无序 集合,其中名称是字符串,值是字符串,数字,布尔值,null,对象或数组。 数组是零个或多个值的 有序 序列。

  • 在编译java类时,如何保持私有方法的顺序?我使用了getDeclaredMethods(),它返回了错误的顺序。

  • 我有一个API,它以以下格式返回JSON: 我还有一个POJO类,它具有与JSON响应的键对应的字段,因为、和键在我的用例中不相关。 是否可以将JSON响应映射到我的JavaPOJO类,即只映射键内的值? 一种可能的方法是接受String响应,并使用setter方法将其映射到我的POJO。 有更好的办法吗。像这样的