Сериализация и десериализация объекта в mapDb - Java
Я пытаюсь сериализовать и десериализовать объект, чтобы сохранить его в mapDb.
Мне удалось сериализовать объект, используя этот фрагмент:
ByteArrayOutputStream bos = new ByteArrayOutputStream();
ObjectOutputStream os = new ObjectOutputStream(bos);
os.writeObject(u);
result = bos.toString();
после этого я сохранил "результат" в mapDb. казалось, все работает как шарм.
К сожалению, я сталкиваюсь с некоторыми проблемами при попытке десериализации.
Вот фрагмент:
byte[] b = null;
b = str.getBytes();
InputStream ac = new ByteArrayInputStream(b);
Object a= ac.read();
str - сериализованный объект, полученный из mapDB, который рассматривается как строка. После этого я "преобразовал" его как byteArray. Я использовал этот подход, потому что у меня были некоторые проблемы при получении данных из mapDb в качестве объектов.
Итак, я спрашиваю вас, как я могу решить эту проблему. Beacuse Object "a" является экземпляром java.lang.Integer, а не нужным классом, поэтому десериализация не работает.
1 ответ
Решение