MapDB - развивающаяся схема / изменение сохраненных объектов

Я сохранил некоторые объекты в mapdb, например:

import org.mapdb.*; 

//open (or create) database 
File file = new File(“dbFileName”);
DB db = DBMaker
.newFileDB(file)
.make(); 

//use map
Map<Integer, MyClass> map = db.hashMap(“mapName”);
map.put(1, myClassInstance); 

//commit and close database
db.commit();
db.close();

После этого я поменял MyClass, добавил / удалил некоторые поля. Как я могу получить доступ к старым объектам, хранящимся в mapdb, чтобы я мог преобразовать их в новый / переработанный MyClass и снова сохранить их?

1 ответ

Самый простой способ - отменить изменения в вашем классе и прочитать старые данные.

MapDB имеет Каталог классов, поэтому большинство проблем можно решить, манипулируя им (переименовывать поля и т. Д.). Но официального API для этого пока нет.

Другие вопросы по тегам