私はmycontrollerメソッドに記述した場合:spring mvcでリダイレクトした後、コントローラからのパラメータを渡す方法はありますか?
return "redirect:url";
何のパラメータが(それは多分のcontrolerメソッドまたはJSPページ)のURLに渡すのだろうか?
私はmycontrollerメソッドに記述した場合:spring mvcでリダイレクトした後、コントローラからのパラメータを渡す方法はありますか?
return "redirect:url";
何のパラメータが(それは多分のcontrolerメソッドまたはJSPページ)のURLに渡すのだろうか?
RedirectAttributes
を使用すると、リダイレクトURLにほぼすべてのデータを渡すことができます:
@RequestMapping(value="/someURL", method=GET)
public String yourMethod(RedirectAttributes redirectAttributes)
{
...
redirectAttributes.addAttribute("rd", "rdValue");
redirectAttributes.addFlashAttribute("fa", faValue);
return "redirect:/someOtherURL";
}
あなたが属性を追加するaddAttribute
を使用
redirect URL
に新しいリクエストを送信します。これにより、リダイレクト属性として文字列またはプリミティブを使用することが制限されています。
addFlashAttribute
を使用すると、これらの属性はリダイレクト(通常はセッション中)の前に一時的に保存され、リダイレクト後に要求に使用可能になり、すぐに削除されます。 flashAttributes
を使用する利点は、(セッションに保存されている)任意のオブジェクトをフラッシュ属性として追加できることです。
いいえ...私はrequest.getParameterMap()でRedirectAttributesを使用しました。そして、それはすべてのURLを持つ新しいURLにリダイレクトするために正常に動作します。例:マーケティングパラメータを再掲載する(utm_source) –
モデルのすべての単純なプロパティ。ここで説明するようにhttp://docs.spring.io/spring/docs/3.2.4.RELEASE/spring-framework-reference/html/mvc.html#mvc-redirecting。 –