Spring MVCはメソッドのModelまたはModelMap引数を自動的にワイヤリングします@RequestMapping
が、ModelMapのサブクラスに対してこれを行うことはできますか?もしそうなら、どこでサブクラスインスタンスを作成しますか?
Spring MVCは、注釈のない引数をコマンドオブジェクトとして扱い、リクエストからそのフィールドに入力すると思います。私は本当にこれが起こることを望まないので、私は試みることを少し恐れています。
Spring MVCはメソッドのModelまたはModelMap引数を自動的にワイヤリングします@RequestMapping
が、ModelMapのサブクラスに対してこれを行うことはできますか?もしそうなら、どこでサブクラスインスタンスを作成しますか?
Spring MVCは、注釈のない引数をコマンドオブジェクトとして扱い、リクエストからそのフィールドに入力すると思います。私は本当にこれが起こることを望まないので、私は試みることを少し恐れています。
私があなたの質問を誤解しない限り、必要なのは@ModelAttributeアノテーションだけです。たとえば、次のように宣言されたメソッドがあります。
@RequestMapping(value="/**/contractComplete.do", method = RequestMethod.POST)
public static void handleContractComplete(
@ModelAttribute(ParamConstants.CONTRACT) ContractCommand command,
BindingResult result,
HttpServletResponse response, HttpSession session) throws IOException
または、おそらくこれが役立つでしょう:私のコントローラーの宣言で、私は
@Controller
@SessionAttributes(ParamConstants.CONTRACT)
その結果、ページを起動したときにモデルに入れたのと同じコマンドオブジェクトが使用されます。このオブジェクトは、引数のクラスを拡張(または実装)するものであれば何でもかまいません。