1

オブジェクト ( としてmodelAttribute) とその値をコントローラー間でフォームに転送する際に問題があります。私は、いくつかのメンバーを持つmodelAttribute、たとえばのフォームを持っています。最初のコントローラーに to モデル"myObject"を追加します。modelAttribute "myObject"

ビューで値の値を読み取って提示することができます"myObject"。たとえば、 を介して値を取得できます${myObject.memberName}が、パラメーターとしてオブジェクトを取る 2 番目のコントローラーになると (つまり: modelAttribute("myObject") MyObject myObject)、メンバーはデフォルト値に設定されます。 、主にヌル!

一部の値はフォームに設定され (正常に動作します)、残りの値は最初のコントローラーに設定されています。2 番目のコントローラーで最初のコントローラーに設定された値を取得したいのですが、それらは失われます。

modelAttributeオブジェクトの値をコントローラー間で失わないように転送するにはどうすればよいですか? それらをHttpRequestパラメーターに配置する必要がありますか?

4

1 に答える 1

0

HTTP はステートレス プロトコルです。そのため、パラメーターがリクエスト間でぶらぶらしないことが期待できます。

それらを HttpRequest パラメータに配置する必要がありますか?

はい、次のリクエストを処理するコントローラーで値を使用できるようにする場合は、それらをリクエストの一部として渡したり、フォームデータに投稿したりする必要があります。

多くのリクエストで利用できるようにしたいデータがある場合は、モデルを HttpSession に入れることを検討できます。

于 2012-11-27T20:34:09.947 に答える