что означают термины formBackingObject и ModelAttribute в Spring MVC?
-
08-07-2019 - |
Вопрос
Полагаю, я не понимаю разницу между " FormBackingObject " и «ModelAttribute» весной MVC.
Похоже, что оба инициируются и заполняются Spring с помощью входящего запроса.
Решение
Хороший вопрос. Это сводится к разнице в терминологии между Spring 2.0 MVC, который использовал иерархию классов контроллера, и Spring 2.5 MVC, который использует аннотации.
" объект поддержки формы " это объект, который будет использовать AbstractFormController
в стиле Spring 2.0 (и подклассы, такие как SimpleFormController
), чтобы привязать данные формы к.
@ModelAttribute
делает то же самое для аннотированных контроллеров в стиле Spring 2.5, но менее жестко.
Таким образом, вы правы в том, что оба делают одно и то же, но стиль действительно совсем другой. Оба являются допустимыми подходами, и оба поддерживаются в Spring 2.5 (и 3.0).