¿Qué significa atributo de modelo?
Cuando se utiliza la anotación ModelAttribute en Spring MVC, si el nombre del parámetro no coincide con el nombre del parámetro solicitado, se puede vincular mediante el atributo de valor. Por ejemplo, @model atributo(valor = " nombre de usuario ") nombre de cadena significa asignar el valor del parámetro solicitado llamado "nombre de usuario" al nombre del parámetro. Además, ModelAttribute también se puede utilizar para vincular algunos datos preestablecidos a campos de solicitud para la representación de páginas posteriores. Estos datos pueden ser constantes, tablas de diccionario, datos categóricos, etc. Al agregar la anotación @ModelAttribute en el método del controlador y devolver los datos específicos, Spring MVC los almacena automáticamente en el campo de solicitud, al que se puede acceder a través de expresiones EL en la página.
En Spring MVC, la función de ModelAttribute no se limita a los dos aspectos anteriores. En un método de controlador, cuando se usa un objeto como parámetro, Spring MVC lo agregará automáticamente a ModelAndView de forma predeterminada y lo tratará como una propiedad en el dominio de solicitud. Los desarrolladores pueden darle al objeto un nombre específico usando la anotación @ModelAttribute en el método y hacer referencia a él en la página usando expresiones EL. Además, la anotación @ModelAttribute también se puede utilizar junto con la anotación @InitBinder para preprocesar JavaBeans en el controlador, como la conversión de tipos y la validación de datos. Con la anotación @ModelAttribute, se puede lograr fácilmente la vinculación de parámetros de solicitud y la inyección de datos comerciales, lo cual es una anotación muy útil en Spring MVC.