2017-10-18 9 views
2

タイトルが既に述べたように、メソッド引数に適用するとき、Spring MVCの@ModelAttributeアノテーションでどのようなターゲットタイプを使用できますか?Springの@ModelAttribute注釈で使用できるターゲットタイプは何ですか?

私は(私自身が頻繁に使用されている)、次の構文を知っている:(

public void finishForm(@ModelAttribute UserInfo info) { 
     ....... 
     return model; 
} 

これは春データバインディングは、すべての解析を行っているフォームのバッキング・コントローラの一部となり、その後、私のカスタムオブジェクトを移入UserInfo)。

私の現在のケースでは、Java PropertiesオブジェクトまたはMap<String, String>にフォーム入力を取り込む方が便利です。

これは有効なユースケースですか、@ModelAttributeのすべてのターゲットタイプの参照を提供できますか?

答えて

1

あなたは以下を使用することができますマップ内のすべてのフォーム入力を取得したい場合:

public void finishForm(HttpServletRequest request) { 

     Map<String, String[]> userInfo = request.getParameterMap(); 

     userInfo.keySet().forEach(s -> { 
      System.out.println(s + " = "+Arrays.toString(userInfo.get(s))); 
     });   
    } 
関連する問題