【问题标题】:When should I use html's <form> and when spring's <form:form> in Spring MVC web app?我什么时候应该在 Spring MVC Web 应用程序中使用 html <form> 和 spring <form:form> ?
【发布时间】:2011-07-02 00:29:44
【问题描述】:

我想知道在spring标签中编写所有表单是否是一种好习惯,或者我可以将spring表单标签与html表单标签混合使用吗?

【问题讨论】:

    标签: java html spring-mvc forms


    【解决方案1】:

    Springs form:form 标记应该与您希望绑定到表单的 formbacking 对象(传递到您的视图的 model 对象)一起使用。

    以没有支持对象的常规形式使用标签没有额外的好处。

    【讨论】:

      【解决方案2】:

      当您需要 Spring 表单提供的功能时使用它们:

      • 绑定到对象
      • 可配置的字段格式
      • 重新显示错误值
      • 错误信息绑定

      对于简单的表单(例如每个页面上的简单搜索框),您通常不需要这些功能 - 因此您可以为它们使用简单的 HTML 表单。

      【讨论】:

      • 用spring表单将对象绑定到表单并在表单元素的名称部分手动设置对象的路径有什么好处吗?例如:服务器端的 。如果以后不绑定对象比什么是对象绑定,它的优点是什么?
      • form:form 也会自动添加 CSRT 令牌。如果您不使用它并且拥有 CSRF 令牌,请不要忘记添加
      • 你能准确描述一下区别是什么
      【解决方案3】:

      顺便说一句,除了与 Model Attribute 绑定数据之外,Spring Form 还通过自动创建 CSRF 令牌并将其插入到我们的表单中来帮助我们(Spring Security)。

      【讨论】:

      • 您的答案可以通过额外的支持信息得到改进。请edit 添加更多详细信息,例如引用或文档,以便其他人可以确认您的答案是正确的。你可以找到更多关于如何写好答案的信息in the help center
      猜你喜欢
      • 2018-11-21
      • 1970-01-01
      • 1970-01-01
      • 2014-12-20
      • 1970-01-01
      • 2021-02-08
      • 1970-01-01
      • 2016-09-24
      相关资源
      最近更新 更多