如何在Spring Controller中处理来自同一表单的两个不同的提交操作

我的JSP中有两个提交按钮,添加,删除。我真的不知道如何区分控制器方面的操作。

<form:form modelAttribute="emp" action="/empl" method="POST"> 

<input type="submit" name="operation" value="Remove"/>

<input type="submit" name="operation" value="Add" />

</form:form>


@RequestMapping(value = "/empl", method = RequestMethod.POST)

public String getD(@Valid Em form, BindingResult result, Model model) {//code}

这两个按钮的Onclick分别正确地将值与“操作添加”或“操作删除”一起发布,然后进行添加,因为这是被调用的默认方法。现在如何捕获操作参数并区分操作并使用它?

回答:

浏览器将提供一个请求参数,其中包含按下的提交按钮的名称。然后,您可以使用它们进行过滤:

@RequestMapping(value="/empl", method=RequestMethod.POST, params="operation=Remove")

public String remove(@Valid Em form, BindingResult result, Model model)

@RequestMapping(value="/empl", method=RequestMethod.POST, params="operation=Add")

public String add(@Valid Em form, BindingResult result, Model model)

然后,每一个都可以根据需要调用共享逻辑。

以上是 如何在Spring Controller中处理来自同一表单的两个不同的提交操作 的全部内容, 来源链接: utcz.com/qa/415015.html

回到顶部