0

JSP:

<form:form commandName="editWeather" method="post" action="../edit">
    <!-- Input fields -->
    <input type="submit" value="Submit">
</form:form>

And this is how I get the model in Spring:

@ModelAttribute("DONTGIVEADAMN") Weather weather

And I can still use the weather to do my operations and it works great, for example:

weatherService.editWeather(weather);

My question is...Why does this work?

4

2 に答える 2

5

モデル属性名は、フォームから受け取ったデータをバインドする場合は問題ではなく (フォーム フィールドの名前はモデル オブジェクトのフィールドの名前に対応するため)、フォームをレンダリングする場合にのみ問題になります。

特に、POSTハンドラー メソッドのモデル属性名がフォームと一致しないcommandName場合、データを受け取ることはできますが、検証エラーのあるフォームを再表示することはできません。

于 2011-09-25T10:25:23.523 に答える
1

変数/パラメーターの名前ではなく、クラスの型 (またはインターフェイス) に一致します。また、指定されたリクエスト マッピング/メソッド シグネチャは正しくなければなりません。

于 2011-09-25T08:55:07.573 に答える