Почему gson конвертирует 1 в 1.0?
Пишу не большое CRUD приложение, которое будет позволять работать с некоторыми сущностями. Делаю его специально без всяких приколюх тип SQL, сервлетов и тд. Вся информация которая появляется в приложении, должна попадать в файл .json, для этого использую библиотеку gson. Объекты простые:
class Skill{
long id;
String name;
toString, getters, setters и тд.
id присваивается сам по типу AUTO_INCREMENT из SQL'я.
}
Далее, после того как пользователь создал несколько объектов, я помещаю их в Set, а после того как программа завершается, полученный set я записываю в файл типа file.json, для дальнейшей десиарелизации:
public static String skillToJson(Set<Skill> set){
return GSON.toJson(set);
}
public static void writeInFile(Set<Skill> set) throws IOException {
Writer writer = new FileWriter(SKILLS_JSON_PATH);
writer.write(skillToJson(set));
writer.close();
}
Проблема в том, что поле id (со значением например 1), сериализуется как 1.0, из за чего испытываю трудности в обратной инициализации своего set. Подскажите пожалуйста юному программисту, можно ли с этим что то сделать, если можно то что и почему так?:) Спасибо!