web-dev-qa-db-ja.com

Springのパス属性

SpringのオブジェクトをhtmlフォームからJavaクラスにバインドする際に、path属性がどのように機能するか説明してください。SpringWebフレームワークの初心者です。

21
Paritosh Ahuja

簡単に言えば、path属性はJavaプロパティを使用してJava Beanの規則を使用します。たとえば、次の形式の場合:

<form:form method="post" modelAttribute="theStudent">
  Name: <form:input type="text" path="name"/>
  Cool?: <form:input type"checkbox" path="cool"/>
  <button>Save</button>
</form:form>

そして、次のコントローラーハンドラーメソッド:

@RequestMapping(...)
public String updateStudent(@ModelAttribute("theStudent") Student student) {
  // ...
}

Studentクラスが次のプロパティで定義されている場合、自動的にバインドします。

public class Student {
  private String name;
  public String getName() { return this.name; }
  public void setName(String name) { this.name = name; }

  private boolean cool;
  public boolean isCool() { return this.cool; }
  public void setCool(boolean cool) { this.cool = cool; }
}

JavaBeans変換の詳細は、 仕様ドキュメントのセクション8. で入手できます。

46
gerrytan