gpt4 book ai didi

java - 用java解析JSON : dynamic keys

转载 作者:太空宇宙 更新时间:2023-11-04 14:08:56 25 4
gpt4 key购买 nike

我需要使用 java 中的一些动态字段创建 JSON 响应。以下是我要返回的 JSON 响应的示例:

{
"success": true,
"completed_at": 1400515821,
"<uuid>": {
type: "my_type",
...
},
"<uuid>": {
type: "my_type",
...
}
}

“success”和“completed_at”字段很容易格式化。如何设置字段格式?对应的java对象是什么?

基本上我想使用 2 个 java 对象:

public class ApiResponseDTO {

private boolean success;
private DateTime completedAt;

...
}

public class AuthenticateResponseDTO extends ApiResponseDTO {

public List<ApplianceResponseDTO> uuids = new ArrayList<ApplianceResponseDTO>();

}

这些 java 对象不符合预期的 JSON 格式。如果我可以将 JSON 格式更改为具有列表,那么它会起作用,但我无法更改它。

非常感谢!

最佳答案

您可以使用 javax.json 库将数据转换为 JSON 形式,特别是 JsonObjectBuilderJsonArrayBuilder 。您可能想要嵌套几个级别的 toJson() 方法,该方法要么为您提供您正在寻找的字符串表示形式,要么为您提供您想要的 JsonObject/JsonArray。像这样的事情:

JsonArray value = null;
JsonArrayBuilder builder = Json.createArrayBuilder();
for (ApplianceResponseDTO apr : uuids) {
builder.add(apr.toJson());
}
value = builder.build();
return value;

关于java - 用java解析JSON : dynamic keys,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28567249/

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