Java Spring MVC@ModelAttribute作为方法参数注释
我在stackoverflow上遇到了一个关于spring MVC上使用Java Spring MVC@ModelAttribute作为方法参数注释,java,spring,spring-boot,spring-mvc,thymeleaf,Java,Spring,Spring Boot,Spring Mvc,Thymeleaf,我在stackoverflow上遇到了一个关于spring MVC上使用@ModelAttribute的问题,并了解到实际上不需要将它添加到方法的参数中 我从我们的旧项目中查找了一些控制器,删除了注释,令人惊讶的是,应用程序在没有@modeldattribute的情况下仍然可以完美地运行。请参见下面的示例: @RequestMapping(method = RequestMethod.POST, value = "/audit/filter") public String g
@ModelAttribute
的问题,并了解到实际上不需要将它添加到方法的参数中
我从我们的旧项目中查找了一些控制器,删除了注释,令人惊讶的是,应用程序在没有@modeldattribute
的情况下仍然可以完美地运行。请参见下面的示例:
@RequestMapping(method = RequestMethod.POST, value = "/audit/filter")
public String getAuditLogsWithFilter(Model model, AuditLogFilter auditLogFilter, BindingResult bindingResult)
我读过一些关于它的文章,但我不能理解为什么@modeldattribute
用于某些方法参数,特别是用于spring控制器
有人能简单解释一下为什么会这样吗?或者有人可以列举一些我应该向参数对象添加@modeldattribute
注释的情况吗?如中所述,它是可选的:
请注意,使用@ModelAttribute是可选的(例如,设置其属性)。默认情况下,任何不是简单值类型(由BeanUtils#isSimpleProperty确定)且未由任何其他参数解析程序解析的参数都将被视为使用@ModelAttribute注释
如中所述,它是可选的:
请注意,使用@ModelAttribute是可选的(例如,设置其属性)。默认情况下,任何不是简单值类型(由BeanUtils#isSimpleProperty确定)且未由任何其他参数解析程序解析的参数都将被视为使用@ModelAttribute注释