как разбить javascript возвращаемый объект String в java - PullRequest
1 голос
/ 27 мая 2020

У меня есть строковый массив объектов, который я вытащил из 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, он слишком неуклюжий. Заранее спасибо

Ответы [ 2 ]

1 голос
/ 27 мая 2020

Как сказал @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, поможет вам преобразовать входящую строку в список объектов, подобных желаемому.

Надеюсь, это будет полезно.

0 голосов
/ 27 мая 2020

Я использовал этот фрагмент кода для выполнения моего требования десериализации списка json объектов, который я получил от Javascript. Надеюсь, это поможет выполнить требования десериализации списка объектов, которые извлекаются из внешнего интерфейса.

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

}
...