代码之家  ›  专栏  ›  技术社区  ›  David Parks

在Springs速度绑定宏(或JSP标记库)中,“命令”的引用是什么?

  •  0
  • David Parks  · 技术社区  · 14 年前

    在Spring3中,如果我有一个这样的表单对象:

    public Person {
       String firstname = null;
       String lastname = null;
       // ... getter & setters ...
    }
    

    我现在明白了,我可以在我的controller方法中将这个对象作为参数接收,Spring将表单参数绑定到Person对象的getter/setter。

    现在我想使用springs绑定宏(相当于JSP taglib用于绑定到表单对象)。

    #springBind("command.firstname")
    

    但我不明白“命令”从何而来,也不明白它的含义,也不明白我需要在控制器中做些什么,才能使这种“绑定”成为可能。

    • 我需要在模型中添加一些内容吗?
    • 我需要为Spring定义Person对象是form对象吗?
    • 应在呈现页面之前向模型中添加<“command”、new Person()>还是在表单提交后重新呈现页面并出现错误?

    我在这里很困惑,只是错过了一些我认为非常简单的概念。

    1 回复  |  直到 14 年前
        1
  •  1
  •   hleinone    14 年前

    是的,您需要在 Model . 当呈现空表单时,你需要把它放在那里,所以 model.addAttribute("command", new Person()) 是正确的方式。在验证错误时,您可能希望使用提交的 Person