首页 > 解决方案 > 高性能的java中的Json转换

问题描述

我需要根据作为 Rest 请求一部分的参数将一个 Json 转换为另一个 Json。该服务是用 Java 开发的。我知道,Jackson API 可以轻松使用,并且还有一些库可用。但我的要求是尽可能快地使用新 Json 传递响应。如果可以给我几个选项,我可以衡量这些选项的性能。

假设我在数据存储中有这个 Json:

{
    "bookId": "23228232-2dfa232",
    "bookName": "Json Transformation",
    "bookPublisher": "Tech Publication",
    "bookRating": [
        {
            "source": "All book rank",
            "maxRating": "10",
            "rating": "3.4"
        },
        {
            "source": "Tech Books",
            "maxRating": "5",
            "rating": "2"
        },
        {
            "source": "Popular",
            "maxRating": "3",
            "rating": "1"
        }
    ],
    "bookAuthor": [
        {
            "name": "Jone",
            "specialities": [
                "Json",
                "Javascript",
                "Typescript",
                "nodejs"
            ]
        },
        {
            "name": "Mike",
            "specialities": [
                "Java",
                "Spring",
                "ElasticSearch"
            ]
        }
    ]
}

下面的其余调用应该有来自这个 Json 的相应结果:Get only authors

/authorName/23228232-2dfa232
{
    authorName: [
        "Jone",
        "Mike"
    ]
}

获得平均评分

/popularity/23228232-2dfa232
{
    rating: "1.78"
}

那么,问题是如何使用任何可用的库有效地进行这种转换?正如我上面提到的,我可以简单地使用 Java 中的任何 Json 库并转换 Json,但我不确定这是否有效。

标签: javajsontransformation

解决方案


您可以使用 GSON,因为它可以轻松地将 JSON 与 POJO 类(尤其是嵌套类)进行映射。对于性能 比较的快速参考,


推荐阅读