【问题标题】:how to split a javascript returned String object in java如何在java中拆分javascript返回的String对象
【发布时间】:2020-05-27 11:49:18
【问题描述】:

我有一个对象的字符串数组,我从 javascript 中提取到 java 作为单个字符串。看起来像这样。

[
   {"sourcevalue":"KRISHNA@IN.IBM.COM","userIdValue":"Krishna L Pappu - 
    krishnalakshmi","objectId":"A1001001A20E08A74322C03420"},
   {"sourcevalue":"KRISHNA@IN.IBM.COM","userIdValue":"Krishna L Pappu - 
    krishnalakshmi","objectId":"A1001001A20E08A74322C03420"},
   {"sourcevalue":"KRISHNA@IN.IBM.COM","userIdValue":"Krishna L Pappu - 
    krishnalakshmi","objectId":"A1001001A20E08A74322C03420"}
]

现在我想知道如何在简单的 java 中将其拆分为如下对象:

{"sourcevalue":"KRISHNA@IN.IBM.COM","userIdValue":"Krishna L Pappu - krishnalakshmi","objectId":"A1001001A20E08A74322C03420"}

{"sourcevalue":"KRISHNA@IN.IBM.COM","userIdValue":"Krishna L Pappu - krishnalakshmi","objectId":"A1001001A20E08A74322C03420"}

{"sourcevalue":"KRISHNA@IN.IBM.COM","userIdValue":"Krishna L Pappu - krishnalakshmi","objectId":"A1001001A20E08A74322C03420"}

我尝试了split 方法,它太笨拙了。提前致谢

【问题讨论】:

  • 通过split向我们展示您的尝试。为什么太笨拙了?您应该解析它并使用 java 对象。
  • 您到底需要什么?看来你需要反序列化一个json对象。

标签: java parsing split


【解决方案1】:

正如@Rabbit 所说,创建一个反序列化器。有很多方法可以做到这一点,一个示例可能是:

class SimpleObj {
  private String sourceValue;
  private String userIdValue;
  private String objectId;
  ... getters, and setters ommited

  public static List<SimpleObj> deserializer(String data){
    Type objType = new TypeToken<ArrayList<SimpleObj>>() {}.getType();
    return new ArrayList<>(new Gson().fromJson(data, objType));
  }
}

接收字符串的方法deserializer需要Gson()库才能工作,因此将其导入您的classpath,该方法将帮助您将传入的字符串更改为对象列表,就像您想要的那样.

我希望这会有所帮助。

【讨论】:

  • 感谢@EtekaChristopher 我使用gson 进行序列化,它有帮助
【解决方案2】:

我使用这段代码来实现反序列化从 Javascript 获得的 json 对象列表的要求。希望这有助于反序列化从前端检索到的对象列表的要求。

@SuppressWarnings("unchecked")
public static AttributeValue[] jsonToObject (String jsonObj, Class gilClass) {      
    Gson gson = new Gson(); 
    return gson.fromJson(jsonObj, AttributeValue[].class);      

}

【讨论】:

    猜你喜欢
    • 2013-09-17
    • 1970-01-01
    • 1970-01-01
    • 2023-03-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多