Сериализация Java: переписать ObjectOutputStream или использовать ArrayList? - PullRequest
0 голосов
/ 31 января 2019

Я работаю с файлом, который хранит Clients (класс Java, который я реализовал) как объекты, использующие сериализацию.Для того, чтобы хранить всех клиентов в этом файле ... что является лучшим подходом и , почему ?

1) Переопределить ObjectOutputStream:writeStreamHeader Поэтому, если я добавлю больше объектов, файл не будет поврежден.Это быстрее, если я только хочу добавить больше клиентов.Не уверен, что возможно / легко удалить или изменить клиентов (думаю, это сложно).

2) Сохраните arrayList<Client>, который уже можно сериализировать.Этот подход действительно прост и не требует никаких хитростей, чтобы заставить его работать.Вы всегда переопределяете весь файл с помощью модифицированного arrayList ... Проблема в том, что с точки зрения производительности эта опция кажется намного медленнее.Каждый раз, когда вы изменяете arrayList, все это должно быть переписано.Если у меня огромное количество клиентов, это может быть проблемой, верно?

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

Спасибо.

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