【问题标题】:serialize a json using gson使用 gson 序列化 json
【发布时间】:2022-01-01 15:05:50
【问题描述】:

我正在使用 com.google.gson.JsonObject 将“参数”内的 json 发送到休息端点。

{
 "parameters": 
   "{
     \"customer\" : {
                       \"firstName\": \"Temp\",
                       \"lastName\": \"Temp\",
                       \"emailAddresses\": [\"temp1@temp.com\"],
                       \"address\": {
                                      \"street1\": \"123 W Temp St\",
                                      \"city\": \"Temp\",
                                      \"state\": \"Illinois\",
                                      \"zipCode\": \"61122\"
                       }
                    },
     \"options\" : [\"tv\"]
   }"
 }

由于参数是一个 json 字符串,我正在尝试这样做:

    JsonObject json = new JsonObject();
    json.addProperty("options", ??);

我不确定如何为客户和选项做这件事。 'options' 是一个 java Set,而 customer 是一个对象。

【问题讨论】:

    标签: json gson


    【解决方案1】:

    你可以使用:

    Gson gson = new Gson();
    String json = "{\"parameters\": {\"customer\" ... ";
    JsonObject jsonObject = gson.fromJson(json, JsonObject.class);
    JsonArray options = new JsonArray();
    options.add("tv");
    jsonObject.add("options", options);
    String output = gson.toJson(jsonObject);
    

    【讨论】:

    • 对于客户java对象,我们可以做jsonObject.add("customer", customerObject)
    猜你喜欢
    • 2017-01-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多