У нас был Объект, скажем, Автомобиль.
Vehicle {
/// other attributes
private String item;
}
Мы хранили Автомобиль как json в динамо-таблицах. и в другом потоке мы делали следующее:
private static final Gson GSON = new GsonBuilder().serializeSpecialFloatingPointValues().create();
GSON.fromJson(p, Vehicle.class)
Проблема в том, что недавно мы внесли изменения в код, изменив транспортное средство следующим образом:
Vehicle {
// other attributes
private Map<EnumType, String> item; // note variable name is same
}
Итак, теперь для старых значений GSON.fromJSON начал давать сбой. Мы не можем вернуться к старому типу данных, так как эта проблема начнет появляться для более нового объекта json, хранящегося в БД. Каков наилучший способ справиться с этим? Я могу подумать о некоторых грязных подходах ... но хочу спросить, предоставляет ли GSON.fromJSON какой-либо способ обработки такого рода изменений в dataType с тем же именем переменной?