HashMap toJson пуст с JSON
Вывод следующий:
private static class Target extends HashMap<String, String> {
}
public static void main(String[] args) {
final Moshi build = new Moshi.Builder().build();
final JsonAdapter<Target> adapter = build.adapter(Target.class);
final Target value = new Target();
value.put("foo", "bar");
System.out.println(adapter.toJson(value));
}
является {}
- Я бы ожидал {"foo":"bar"}
- Как я могу получить ожидаемый результат?
1 ответ
Решение
Используйте класс карты, а не цель при создании JsonAdapter
private static class Target extends HashMap<String, String> {
}
public static void main(String[] args) {
final Moshi build = new Moshi.Builder().build();
final JsonAdapter<Map> adapter = build.adapter(Map.class);
final Target value = new Target();
value.put("foo", "bar");
System.out.println(adapter.toJson(value));
}