springmvc@modeldattribute作为方法参数注解

j2datikz  于 2021-06-26  发布在  Java
关注(0)|答案(1)|浏览(437)

我偶然得到了一个关于用法的答案 @ModelAttribute 在springmvc上,这里介绍了stackoverflow,并了解到实际上并不需要将它添加到方法的参数中。我从我们的旧项目中寻找了一些控制器,删除了注解,令人惊讶的是,应用程序仍然在没有注解的情况下完美地运行 @ModelAttribute . 请参见下面的示例:

@RequestMapping(method = RequestMethod.POST, value = "/audit/filter")
public String getAuditLogsWithFilter(Model model, AuditLogFilter auditLogFilter, BindingResult bindingResult)

我读过一些关于它的文章,但我不明白为什么 @ModelAttribute 用于某些方法参数,特别是Spring控制器。有人能简单解释一下为什么会这样吗?或者有人能列举一些我应该加上 @ModelAttribute 我的参数对象的注解?

7vhp5slm

7vhp5slm1#

如官方文件所述,它是可选的:
请注意,使用@modeldattribute是可选的(例如,设置其属性)。默认情况下,任何不是简单值类型(由beanutils#issimpleproperty确定)且未由任何其他参数解析程序解析的参数都将被视为使用@modelattribute进行了注解。

相关问题