Я пытаюсь преобразовать JsonObject в String с помощью библиотеки GSON. Но результат вывода будет иметь еще один слой родительской «карты», обертывающий json. Пожалуйста, дайте мне знать, что я неправильно сделал, почему появится слой родительского "Карта"?
Я даже пытаюсь скрыть bean-компонент с помощью new Gson (). ToJson (bean); но у выходного результата также есть еще один слой родительской карты, обертывающий json.
Условие, которое я должен выполнить, используя
1) Mutable object
2) GSON
3) method might handle other object Type
Проект Maven с использованием библиотеки ниже:
<dependency>
<groupId>com.google.code.gson</groupId>
<artifactId>gson</artifactId>
<version>2.8.5</version>
</dependency>
Java-код ниже (пример для понимания только не реального кода, будет использоваться в T):
List<JSONObject> records = new ArrayList <JSONObject> ();
JSONObject bean = new JSONObject();
bean.put("A", "is A");
bean.put("B", "is B lah");
bean.put("C", "is C lah");
bean.put("D", "is D");
records.add(bean);
String JSONBody2 = new Gson().toJson(records);
Я ожидаю, что выход
[{"D":"is D","A":"is A","B":"is B lah","C":"is C lah"}]
но фактический результат
[{"map":{"D":"is D","A":"is A","B":"is B lah","C":"is C lah"}}]
Фактический код указан ниже
public String Json( String json, List<T> list) {
String JSONBody = new Gson().toJson(list);
}
Мне нужно сериализовать с помощью gson, поэтому я поставил T., но я понятия не имею, почему здесь появилась «карта». как и раньше, он работает без родительской «карты». (тот же код и та же библиотека, только что созданный проект, но с этой проблемой)