Лучшая практика для сохранения данных для Java-приложения [duplicate]

Чтобы удалить вашу ветку локально и удаленно

  • Оформить покупку в мастер-ветке - git checkout master
  • Удалить удаленную ветку - git push origin --delete <branch-name>
  • Удалите локальную ветвь - git branch --delete <branch-name>
3
задан sweaty 26 March 2013 в 17:58
поделиться

3 ответа

Я бы сказал, если вам нужно хранить немного информации, вы можете использовать файл свойств.

Если вам нужно хранить более сложную структуру, чем просто свойства, я предлагаю использовать базу данных (HSQL, Oracle, Mysql, MSSQL и т. д.). , В зависимости от ваших потребностей.

2
ответ дан TheEwook 3 September 2018 в 13:46
поделиться

Это зависит от того, сколько данных у вас есть.

Если вы хотите сохранить партию пар ключ / значение, например, некоторые пользовательские настройки, вы можете использовать класс Preferences который реализован с использованием реестра Windows, конфигурационных файлов в Linux и любого другого предпочтительного способа хранения пользовательских настроек на других форматах.

Когда у вас есть фактические данные, которые слишком много для реестра, но недостаточно чтобы гарантировать базу данных (что-то в порядке нескольких МБ), использование одного или нескольких плоских файлов может быть решением. Когда данные являются сложными, может быть хорошей идеей использовать стандартизованный формат, например XML, вместо того, чтобы что-то запустили. Java имеет классы, которые позволяют легко разбирать и сериализовать XML. Альтернативным быстрым и грязным решением было бы использовать ObjectStreams для сохранения и восстановления целых объектов. Это очень легко реализовать, но может быть не очень эффективным, потому что в нем хранится много метаинформации, которая, вероятно, не нужна.

Но когда у вас много данных (больше, чем вам удобно читать и писать полностью), это может быть разумным шагом для использования базы данных. База данных позволяет вам легко получить доступ к огромным объемам данных (в заказах нескольких ГБ) и предлагает вам множество бесплатных функций, которые трудно реализовать самостоятельно (например, поиск записей с использованием индексов). Базы данных не являются волшебными. Однако они также используют файлы для хранения своих данных (файлы с очень умной структурой). Вы можете копировать каждую функцию базы данных самостоятельно. Но зачем вам изобретать колесо, когда вы можете просто использовать существующее решение?

4
ответ дан Philipp 3 September 2018 в 13:46
поделиться

Если вопрос заключается в том, как получить данные в файл и из него, я просто хотел выкинуть ключевое слово «сериализация», если вы не знакомы с ним. Google это, есть тонны учебников. В двух словах, Java имеет встроенную поддержку для записи объектов и чтения объектов из двоичных потоковых потоков, которые вы, конечно, можете писать в / читать из файлов. Таким образом, вам не придется реализовывать код для хранения и чтения ваших разных участников. Просто укажите объекты в коде, которые содержат состояние программы и сериализуют их. Вы также можете сериализовать XML, создав созданные вручную файлы.

0
ответ дан themik81 3 September 2018 в 13:46
поделиться
Другие вопросы по тегам:

Похожие вопросы: