gpt4 book ai didi

java - 如何只读取 json 响应中的一个值?

转载 作者:行者123 更新时间:2023-12-01 11:13:45 24 4
gpt4 key购买 nike

我正在使用 Zephyr api,它返回给我 json 数组,其中包含类似这样的 json 对象...

{
"executions": [
{
"id": 24,
"cycleId": 13,
"cycleName": "CLONE - Audit Test Cycle 2",
"issueKey": "ZFJ-2",
"projectKey": "ZFJ",
"project": "ZFJ",
"priority": "Major",
"component": "c1",
"versionId": 10000,
"version": "v1",
"status": {
"id": 2,
"name": "FAIL",
"description": "Test was executed and failed.",
"color": "#CC3300",
"type": 0
},
"executedOn": "18/Oct/13",
"creationDate": "18/Oct/13",
"executedBy": "admin",
"executedByUserName": "admin"
},
{...},
{
"id": 1,
"cycleId": 1,
"cycleName": "Audit Test Cycle",
"issueKey": "ZFJ-2",
"projectKey": "ZFJ",
"project": "ZFJ",
"priority": "Major",
"component": "c1",
"versionId": 10000,
"version": "v1",
"status": {
"id": 1,
"name": "PASS",
"description": "Test was executed and passed successfully.",
"color": "#75B000",
"type": 0
},
"executedOn": "4/Oct/13",
"creationDate": "4/Oct/13",
"executedBy": "admin",
"executedByUserName": "admin"
}
]

最初我使用 org.json 来解析 json 数组,但当我只解析大约 200 个 json 对象时,它对我来说似乎非常慢。我从每个对象中唯一需要的是“id”,所以我想通过扫描每个 json 对象中的“id”来自己解析文档,而不是使用 org.json 解析整个 json 响应。

与使用 org.json 相比,这会提高我的解析性能吗?如何在没有解析器的情况下扫描 json 响应?我假设 json 响应仍然是一行文本,解析器负责检索键和值。

除了我的建议之外,还有更好的选择吗?更高效的解析器?与其他解析器相比,org.json 的性能如何?

最佳答案

手动解析 JSON 并不是一个好主意。

只要使用已建立的库就不会出现问题。 Jackson可能是一个不错的选择。它显示出良好的性能,并且链接的示例很容易理解。如果您只需要 ID 字段,您甚至不需要创建复杂的结构(您可以安全地省略其余字段)。

关于java - 如何只读取 json 响应中的一个值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32083116/

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