Android - GreenDao создает / использует сущность и класс Dao для существующей базы данных sqlite. Используйте greenDao с существующими БД

У меня есть существующая схема sqlite db (около 30 таблиц), которую я должен импортировать в мой проект Android. Я хотел бы использовать greenDao в своем коде, но я не знаю, как это возможно, если я уже создал sqlite db. Можно ли работать с greenDao, даже если у меня нет класса pojo/entity, сгенерированного greenDao Generator? Могу ли я создать их вручную? Я думаю, что мне нужны также DaoMaster и DaoSession!??!

Большое спасибо.

1 ответ

Я никогда не делал этого, но теоретически, да, вы можете.

Со страницы часто задаваемых вопросов greenDao:

Могу ли я использовать существующие классы сущностей? Могу ли я пропустить генерацию сущностей? Да. В вашем проекте генератора вызовите setSkipGeneration(true) для сущностей, которые вы не хотите генерировать. Таким образом, вы имеете максимально возможный контроль над своими объектами за счет ручного обслуживания. Тем не менее, это считается расширенным использованием и должно быть зарезервировано только для особых случаев: рекомендуемый способ - генерировать сущности и использовать "держать разделы" для введения в них пользовательского кода. Если вы решите пропустить создание сущности, вы должны либо предоставить конструктору все поля свойств в том порядке, в котором они были добавлены в проект генератора. Или, в качестве альтернативы, вызовите setConstructors(false) для сущностей, чтобы заставить greenDAO использовать сеттеры вместо конструктора для создания сущностей.

Я понимаю, что вы должны реализовать проект генератора, как обычно, но скайп де генерация сущностей. Это должно генерировать только DaoMaster и DaoSession.

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