【问题标题】:How to create an object class that can converted to json like this in java? [duplicate]如何在java中创建一个可以像这样转换为json的对象类? [复制]
【发布时间】:2020-01-21 09:46:55
【问题描述】:

这是我需要传递给其他 API 的 JSON 请求,我的问题是我不知道如何创建一个可以包含其他对象的对象。

什么是最好的方法,我将使用 ObjectMapper 将对象转换为这样的 json。

{
    "request": {
        "head": {
            "version": "1.0.0",
            "function": "sample.function",
            "clientId": "clientId",
            "clientSecret": "clientSecret",
            "reqTime": "2001-07-04T12:08:56+05:30",
            "reqMsgId": "reqMessageID",
            "reserve": ""
        },
        "body": {
            "occurTime": "2018-03-04T12:08:56+08:00",
            "bizScene": "SAMPLE_BIZ",
            "envInfo": {
                "tokenId": "jkahsdhsjakdhkjsajdsahdkjsakdhsa===",
                "clientIp": "127.0.0.1",
                "appVersion": "v0.1.0",
                "terminalType": "NOP"
            },
            "extendInfo": {
                "PSID":"87943297427",
                "PSID_CreatedDate":"2018-01-04T12:08:56+08:00",
                "mobtelLinkingDate" : "2018-03-04T12:08:56+08:00",
                "mobtelUnlinkingDate" : "2018-04-04T12:08:56+08:00",
                "activeLinkedMobtel" : "123756"
            },
            "accountInfo": {
                "userMobile": "123756"
            },
            "operationInfoDTO" : {
                 "operationOrigin": "TWEETER",
            },
            "operationType": "SAMPLE",
            "operationResult": "FALSE",
        }
    },
    "signature": "signature string"
}

【问题讨论】:

标签: java


【解决方案1】:

我为使用this网站生成样板bean对象的根对象命名

"rootObj":{
    "request": {
        "head": {
            "version": "1.0.0",
            "function": "sample.function",
            "clientId": "clientId",
            "clientSecret": "clientSecret",
            "reqTime": "2001-07-04T12:08:56+05:30",
            "reqMsgId": "reqMessageID",
            "reserve": ""
        },
        "body": {
            "occurTime": "2018-03-04T12:08:56+08:00",
            "bizScene": "SAMPLE_BIZ",
            "envInfo": {
                "tokenId": "jkahsdhsjakdhkjsajdsahdkjsakdhsa===",
                "clientIp": "127.0.0.1",
                "appVersion": "v0.1.0",
                "terminalType": "NOP"
            },
            "extendInfo": {
                "PSID":"87943297427",
                "PSID_CreatedDate":"2018-01-04T12:08:56+08:00",
                "mobtelLinkingDate" : "2018-03-04T12:08:56+08:00",
                "mobtelUnlinkingDate" : "2018-04-04T12:08:56+08:00",
                "activeLinkedMobtel" : "123756"
            },
            "accountInfo": {
                "userMobile": "123756"
            },
            "operationInfoDTO" : {
                 "operationOrigin": "TWEETER",
            },
            "operationType": "SAMPLE",
            "operationResult": "FALSE",
        }
    },
    "signature": "signature string"
}

【讨论】:

    【解决方案2】:

    第 33 行和第 36 行的 JSON 示例中有一些小的语法错误。

    JSON 不喜欢在列表或字典的最后一个元素之后使用逗号。

    如果您删除这些并将此 JSON 用作http://www.jsonschema2pojo.org/ 的输入,您将获得相应的 Java 类。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2017-09-19
      • 1970-01-01
      • 2021-02-25
      • 2021-09-08
      • 1970-01-01
      • 2021-11-22
      • 1970-01-01
      相关资源
      最近更新 更多