Я работаю с файлом, который хранит Clients
(класс Java, который я реализовал) как объекты, использующие сериализацию.Для того, чтобы хранить всех клиентов в этом файле ... что является лучшим подходом и , почему ?
1) Переопределить ObjectOutputStream:writeStreamHeader
Поэтому, если я добавлю больше объектов, файл не будет поврежден.Это быстрее, если я только хочу добавить больше клиентов.Не уверен, что возможно / легко удалить или изменить клиентов (думаю, это сложно).
2) Сохраните arrayList<Client>
, который уже можно сериализировать.Этот подход действительно прост и не требует никаких хитростей, чтобы заставить его работать.Вы всегда переопределяете весь файл с помощью модифицированного arrayList ... Проблема в том, что с точки зрения производительности эта опция кажется намного медленнее.Каждый раз, когда вы изменяете arrayList, все это должно быть переписано.Если у меня огромное количество клиентов, это может быть проблемой, верно?
Каким-то образом я вижу пункт номер два легче и лучше.Если вы хотите иметь огромное количество Клиентов, вероятно, лучше иметь другой способ их хранения (базы данных) ... Тем не менее, я действительно хочу знать второе мнение.
Спасибо.