为了账号安全,请及时绑定邮箱和手机立即绑定

用于休眠实体映射的 Json 到 Java 对象转换

用于休眠实体映射的 Json 到 Java 对象转换

互换的青春 2021-12-10 12:31:50
我试图将我的 JSONObject 对象转换为 java 对象,但只在我的 java 对象中不断获取空值。寻求您的建议,我如何将我的 json 值设置为 java 对象,以便我可以将这些 java 对象保存在我的休眠实体中。 如果您能告诉我如何根据此 json 创建我的 java POJO,那就太好了。下面是我的 json :{  "msg": "1 out of 1 Transactions Fetched Successfully",  "transaction_details": {    "148042": {      "firstname": "Navneet",      "transaction_amount": "11.00",      "amt": "11.00",      "Settled_At": "0000-00-00 00:00:00",      "addedon": "2018-09-26 20:36:25",      "mode": "CC",      "card_no": "512345XXXXXX2346",      "additional_charges": "0.00",      "error_Message": "NO ERROR",      "payment_source": "payu",      "bank_ref_num": "368960",      "bankcode": "CC",      "txnid": "148042",      "unmappedstatus": "captured",      "udf5": null,      "mihpayid": "40399371551645689",      "udf3": null,      "udf4": null,      "net_amount_debit": 11,      "udf1": null,      "card_type": "MAST",      "udf2": null,      "Merchant_UTR": null,      "field9": " Verification of Secure Hash Failed: E700 -- Approved -- Transaction Successful -- Unable to be determined--E000",      "error_code": "E000",      "disc": "0.00",      "productinfo": "Health",      "request_id": "",      "field2": "178707",      "PG_TYPE": "AXISPG",      "name_on_card": "Mukesh",      "status": "success"    }  },  "status": 1}
查看完整描述

2 回答

?
绝地无双

TA贡献1946条经验 获得超4个赞

根据上面的 json,您需要创建 3 个 java 类:


等级1


private String status;

private String msg;

private Class2 transactionDetails;

2级


private Class3 transactionparameters;

3级


public String firstname;

public String transaction_amount;

public String amt;

public String Settled_At;

public String addedon;

     etc etc

现在访问您可以使用的对象


class1_Object.getTransactionDetails().getTransactionparameters();


这将为您获取第三堂课中可用的所有详细信息。


我希望这能解决您的问题。


查看完整回答
反对 回复 2021-12-10
?
偶然的你

TA贡献1841条经验 获得超3个赞

JSON 数据可以映射到 2 个类:


class Root {

    int status;

    String msg;

    Map<String, Detail> transaction_details;

}


class Detail {

    String firstname;

    String name_on_card;

    BigDecimal amt;

    // and many more

}

请记住,JSON 属性是无序的,因此您可以以更有意义的方式对字段进行排序。


JSON fortransaction_details是具有动态属性名称的 JSON 对象,因此需要将其映射为 Java name-to-value Map。


查看完整回答
反对 回复 2021-12-10
  • 2 回答
  • 0 关注
  • 144 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信