我从数据提供者那里收到了一些字符串格式的 JSON,据我了解,我可以使用类文件将 JSON 转换为 POJO。数据提供者提供了@JsonProperty我设法将 JSON 转换为 POJO 的类。我的问题是,是否可能只有一个包含所有类的嵌套 java@JsonProperty类?而不是有单独的类,其中有很多。json字符串:{ "BillingAccount": { "AccountType": "Trial", "AccountBalance": 999.99, "TransactionCost": 999.99, "ExtraInformation": {} }, "Request": { "RequestGuid": "abcde", "PackageId": "abcde", "PackageVersion": 2, "ResponseVersion": 2, "DataKeys": { "Vrm": "example" } }}BillingAccount.javapublic class BillingAccount{ @JsonProperty("AccountType") public String accountType; @JsonProperty("AccountBalance") public double accountBalance; @JsonProperty("TransactionCost") public double transactionCost; @JsonProperty("ExtraInformation") public ExtraInformation extraInformation;}数据键.javapublic class DataKeys{ @JsonProperty("Vrm") public String vrm;}请求.javapublic class Request{ @JsonProperty("RequestGuid") public String requestGuid; @JsonProperty("PackageId") public String packageId; @JsonProperty("PackageVersion") public int packageVersion; @JsonProperty("ResponseVersion") public int responseVersion; @JsonProperty("DataKeys") public DataKeys dataKeys;}POJO.javapublic class POJO { @JsonProperty("BillingAccount") public JSONSorter.BillingAccount billingAccount; @JsonProperty("Request") public JSONSorter.Request request;}理想解决方案:如您所见,JSONSorter 类包含其他类。所以在创建 POJO 时,我会调用 publicJSONSorter.Request request;而不是只调用 Request。这是一个理想解决方案的原因是因为 Request 类可能具有不同的属性,具体取决于正在检索的数据集。因此,与其拥有 Request1、Request2、Request3,不如拥有 JSONSorter1、JSONSorter2、JSONSorter3。其中每一个都将包含要检索的数据所需的类。
1 回答
POPMUISE
TA贡献1765条经验 获得超5个赞
您理想的解决方案应该有效。唯一缺少的是使内部类静态。它们必须是静态的,以便您的 JSON 反序列化程序可以实例化它们,而无需将它们附加到 JSONSorter 的现有实例。
添加回答
举报
0/150
提交
取消