2014-01-24 4 views
3

В недавнем веб-проекте Java я столкнулся с различными местами, где я видел контроллер на базе весны , реализующий Serializable.Контроллер весны/компонентные инструменты Serializable

Мне любопытно, что почему Контроллер/Компонент должен был реализовать Serializable?

Я думаю, что это неправильная практика, чтобы сделать это, и поиск до сих пор для любого сценария для реализации Serializable ничего не принес. Я считаю, что это нарушает принцип MVC и является нетрадиционным. Вы хотели бы сохранить Домен/Бизнес Объекты отдельно от Контроллеры/Компоненты.

Я хотел бы исправить эту плохую практику в базе кода, но просто хотел убедиться, что у меня есть причина сделать это.

Любые объяснения/сценарий, иллюстрирующие этот случай, будут оценены.

+0

Звуки wriong для меня. Можете ли вы опубликовать код? – Romski

ответ

2

Нет необходимости в контроллерах быть Serializable. Они без гражданства и просто посредничают между моделью и представлением. То же самое можно сказать и о других компонентах без гражданства. В их создании нет никакой пользы Serializable.

Объекты с фиксированной моделью, однако, часто являются Serializable, потому что их иногда помещают в HttpSession. Серверы приложений требуют, чтобы объекты в сеансе были Serializable для целей репликации и сохранения.

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