Хранение данных в JSON или в SQLITE (Android) - PullRequest
0 голосов
/ 03 января 2019

Я создаю приложение, которое должно извлекать объекты данных во время выполнения. Каждый из объектов имеет одинаковую структуру (пара строк, логические значения и массивы). Размер данного объекта относительно невелик (100-1000 байт). Пользователь не будет добавлять / удалять / изменять элементы во время выполнения, поэтому не будет выполняться операция записи данных. Я ожидаю, что в окончательной версии номер объекта будет, безусловно, ниже 5000. Мне нужно будет искать данный объект или фильтровать объект по критериям.

Мой вопрос: разумно ли использовать файл JSON? Мне нравится, что JSON изначально поддерживает все мои типы данных и может быть легко отредактирован даже из Android Studio. Как только я помещаю его в папку с активами, он легко компилируется с приложением.

С другой стороны, SQLITE имеет преимущества в качестве базы данных, поэтому поиск, сортировка и т. Д. Было бы проще, чем с файлом JSON.

Ответы [ 2 ]

0 голосов
/ 03 января 2019

почему бы не sharedpreferences и Gson, вы можете сохранить свой json как список объектов и реализовать свои методы поиска

, в вашем случае я думаю, что использование файла - лучшая идея, время доступа кбаза данных намного больше, чем для файла

0 голосов
/ 03 января 2019

Нет ничего плохого в хранении данных в файле json.Он легко разбирается и является обычным средством хранения небольших объемов данных, например настроек.Недостатки этого способа хранения больших объемов данных заключаются в том, что он не обеспечивает возможности поиска, а получение доступа для обеспечения максимальной эффективности потребует большой работы.

Возможно, вы захотите разделить разницу и посмотреть на документна основании БД.Они в основном хранят JSON, но по-прежнему позволяют запрашивать, обрабатывать кэширование и т. Д. Это, конечно, при условии, что у вас есть значительный объем данных.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...