Я хочу сериализовать свой класс, используя gson, но я хотел бы опустить имя hashmap.Это возможно с GSON?
Я попытался написать свой собственный TypeAdapter, но имя карты по-прежнему записывается как родительский объект.
У меня есть класс, который выглядит как
public class myClass {
@Expose
public Long timestamp;
@Expose
public String id;
@Expose
public HashMap<String, someOtherClass> myMap = new HashMap<>();
@Override
public String toString() {
Gson gson = new GsonBuilder()
.excludeFieldsWithoutExposeAnnotation()
.create();
return gson.toJson(this);
}
}
текущий вывод:
{
"timestamp": 1517245340000,
"id": "01",
"myMap": {
"mapKey1": {
"otherClassId": "100", // works as expected
}
"mapKey2": {
"otherClassId": "101", // works as expected
}
}
}
Что я надеюсь получить:
{
"timestamp": 1517245340000,
"id": "01",
"mapKey1": {
"otherClassId": "100", // works as expected
},
"mapKey2": {
"otherClassId": "100", // works as expected
}
}