3
Spring MVCでは、フォーム要素値を使用してコントローラメソッドを選択する方法はありますか?たとえば、2つのボタンの両方に "action"という名前のフォームがあるとします。とにかくjavascriptを使わずにユーザがクリックしたボタンに基づいて、異なるコントローラメソッドを実行する方法はありますか?SpringMVCでは、フォーム要素値を使用してコントローラメソッドを選択する方法はありますか?
Spring MVCでは、フォーム要素値を使用してコントローラメソッドを選択する方法はありますか?たとえば、2つのボタンの両方に "action"という名前のフォームがあるとします。とにかくjavascriptを使わずにユーザがクリックしたボタンに基づいて、異なるコントローラメソッドを実行する方法はありますか?SpringMVCでは、フォーム要素値を使用してコントローラメソッドを選択する方法はありますか?
はい、@RequestMapping(params="...")
を使用します。 docsを参照してください。
パラメータ条件を使用してパスマッピングを絞り込むことができます。「myParam = myValue」スタイルの式のシーケンスで、このような各パラメータが特定の値を持つ場合にのみマップされます。例:
@Controller
@RequestMapping("/owners/{ownerId}")
public class RelativePathUriTemplateController {
@RequestMapping(value = "/pets/{petId}", params="myParam=myValue")
public void findPet(@PathVariable String ownerId, @PathVariable String petId, Model model {
// implementation omitted
}
}