2015-11-10 3 views
1

Я хочу сохранить список пользовательских объектов в cookie. Пример: Допустим, у меня есть класс продукта. Я хочу сохранить список продуктов, выбранного клиентом в печенье, пока он не войдет вПользовательский объект списка в файлах cookie

(например) класса продукт { INT идентификатора; строка имя; поплавок цена;}.

Поскольку куки позволяет только строка , Возможные решения: 1) Я могу сохранить его в запятой (,) в файле cookie. (т. е.) id: price, id: price и manupulate каждый раз. 2) Я могу сделать класс реализует сериализации, создать еще одну оболочку, которая содержит этот список и добавить его в печенье (т.е.) класс обертка реализует Serializable {список продуктов;}

Вариант 1 делает предварительный расчет на строку, а вариант 2 дает мне контроль уровня класса, так что я могу делать дальнейшие манипуляции напрямую, когда это необходимо. Пожалуйста, предложите мне, что является лучшим вариантом. Пожалуйста, дайте мне знать, плюсы и минусы на обоих подходах, .. Предложите мне, если есть лучшее решение, чем это, если существует. Заранее спасибо.

+0

Дезициализация из файла cookie представляет собой угрозу безопасности! http://www.infoq.com/news/2015/11/commons-exploit. Предложение thatidiotguy строки JSON является совершенным. Вы также можете закодировать base64 строку, которая скрывает содержимое файлов cookie. – Jamie

ответ

2

Я бы порекомендовал использовать JSON для кодирования ваших объектов и сохранения их в виде строки в файле cookie. Это облегчает отладку проблем, связанных с кукисами, поскольку вы можете сразу сказать, какие значения хранится в cookie, поскольку JSON читается человеком.

Я просто не думаю, что это хорошее использование Java-сериализации.

Смежные вопросы