gpt4 book ai didi

java - jackson @JsonPropertyOrder 被忽略

转载 作者:搜寻专家 更新时间:2023-11-01 00:55:29 26 4
gpt4 key购买 nike

我目前正在使用 Spark 框架开发 RESTful 应用程序,并使用 Jackson 进行序列化。我遇到了这样的问题:@JsonPropertyOrder 被忽略了。

这是我的 POJO:

@Data
@JsonPropertyOrder({"id", "company", "title", "infos", "startDate", "endDate"})
public class Info {
@JsonProperty("id")
long id;

@JsonProperty("company")
Company company;

@JsonProperty("title")
String title;

@JsonProperty("infos")
List<Prize> infos;

@JsonProperty("startDate")
Date startDate;

@JsonProperty("endDate")
Date endDate;

public Info() {}
}

我用这个方法生成 JSON:

public static String generateJSONResponse(Object response) {
if (responseObjectMapper == null) {
responseObjectMapper = new ObjectMapper(new JsonFactory());
responseObjectMapper.enable(SerializationFeature.INDENT_OUTPUT);
}

try {
return responseObjectMapper.writeValueAsString(response);
} catch (IOException ioe) {
// Must not occur
}

// Something really unexpected happened, so we return unknown response;
return ErrorMessages.ERROR_RESPONSE_UNKNOWN;
}

最后我收到了这个:

{
"status": 0,
"result": {
"infoList": [
{
"infos": [...],
"id": 2,
"title": "...",
"company": {...},
"startDate": 1445238000000,
"endDate": 1445792400000
},
...
]
}
}

我做错了什么?还是 jackson 出了什么问题?有人可以帮我吗?

另外,我使用 Jackson 版本 2.6.3 和 2.3.5 进行了尝试。两者的工作方式相同。

最佳答案

检查您是否导入了正确的“JsonPropertyOrder”包:

这对我有用: import com.fasterxml.jackson.annotation.JsonPropertyOrder;

关于java - jackson @JsonPropertyOrder 被忽略,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33186004/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com