Spring注解@ModelAttribute和@Valid

使用@ModelAttribute和有@Valid什么好处?

有哪些区别?

是否可以同时使用它们?

回答:

@ModelAttribute用于将方法参数或方法返回类型映射/绑定到命名模型属性。请参见@ModelAttribute的JavaDoc。这是一个Spring注释。

@Valid是一个标记,用于标记用于JSR-303

bean验证的对象。参见@Valid的JavaDoc。它是JavaEE

6的一部分,但我认为Hibernate具有较早的实现,大多数人都使用它。

使用的优点@ModelAttribute是您可以将表单的输入映射到Bean。这样做的好处@Valid是,您可以利用JSR-303

Bean验证来确保针对某些规则对制成的Bean进行了验证。

是的,您可以一起使用@ModelAttribute@Valid

将数据从表单(sic

View)传输到Model对象的最好方法是使用Spring遵循典型/传统的MVC设计模式。我个人更喜欢的方法是在JSP中使用带有Spring JSTL

<form:*>标签的表单来设置表单modelAttribute。在Controller上,有一个处理程序从具有匹配项的表单接受POST,该匹配项@ModelAttribute是表示表单输入的Bean。然后,我会将“

Form Bean”传递给服务层以执行一些操作,包括在需要时将“ Form

Bean”转换为任何模型(如果表单直接创建模型对象,则不需要),并通过保存/更新/等一个DAO。这只是做事的一种方式,但这可能是我在日常工作中对Spring所做的大部分工作。

建议阅读Spring参考资料并按照教程进行操作。这些参考资料写得很好,易于阅读,并且包含许多示例,这些示例说明了您在Spring中可以执行各种操作的方式,并且通常有很多关于如何在Spring中执行操作的选择。

以上是 Spring注解@ModelAttribute和@Valid 的全部内容, 来源链接: utcz.com/qa/435363.html

回到顶部