Сохранение объекта Java ME

Я знаю, что сериализация (Serializable) недоступна в Micro Edition Java. Сохранять примитивы, такие как объекты int и java.lang.String, с помощью RMS довольно просто. Но если я хочу сохранить (сделать постоянным) произвольный объект? Это возможно?


person Community    schedule 23.01.2009    source источник
comment
связанные: stackoverflow.com/questions/2449005/   -  person RzR    schedule 04.04.2011


Ответы (2)


Вы можете использовать API подключения для записи данных в файл / поток. Имейте в виду, что сохранить данные в потоке легко, но для восстановления данных из потока вам придется написать свой собственный код. Обычно для этой цели используется отражение, которое на многих устройствах становится узким местом.

Поэтому вместо того, чтобы заново изобретать колесо, я бы посоветовал использовать Floggy (http://floggy.sourceforge.net/). Floggy - это бесплатная среда сохранения объектов для приложений J2ME / MIDP. Основная цель этой структуры - абстрагироваться от деталей сохраняемости данных от разработчика, уменьшая затраты на разработку и сопровождение. Вы можете проверить примеры на http://floggy.sourceforge.net/getting-started.html#framework

person Community    schedule 23.01.2009
comment
ага, Floggy - это действительно то, что я искал. - person Schildmeijer; 23.01.2009

К сожалению, нет возможности сохранить произвольный объект, не написав для него код, поскольку отражение в J2ME сильно ограничено (вы можете искать классы, но не можете искать их поля и методы).

person Joachim Sauer    schedule 23.01.2009
comment
хм, ладно. Я думаю, что лягушка это исправила;) - person Schildmeijer; 23.01.2009
comment
Приятно, но, похоже, используется генерация байт-кода, чтобы обойти отсутствие отражения, поэтому мой ответ все еще остается в силе. - person Joachim Sauer; 23.01.2009