将参数从JSP传递给控制器​​ - Spring MVC

时间:2012-12-20 17:16:09

标签: spring model-view-controller jsp parameters controller

当我想将参数传递给控制器​​时,我遇到了一些问题。 我在控制器中有一个方法:

@RequestMapping("/redirect")

public String print(String type, HttpServletRequest servletRequest)
{
    String path = "redirect:" + servletRequest.getParameter("type");
    return path;
}

public String print(String type, HttpServletRequest servletRequest) { String path = "redirect:" + servletRequest.getParameter("type"); return path; }

我的jsp文件中有一些按钮:

通过这种方式,我有3个按钮,例如我按下开发者按钮变量“type”是“/ developer”,我将它发送给控制器。但现在我的按钮看起来像这样: http://imageshack.us/photo/my-images/854/buttonspx.png/

它的工作正确,但我无法摆脱这个HTML标记,而且它真的很紧张。这该怎么做?或者如何以不同的方式向控制器发送值。提前谢谢。

1 个答案:

答案 0 :(得分:4)

您可以使用提交按钮并在控制器中处理它们,而不是普通按钮,如下所示

 <input type="submit" value="Developer" name="developer"></input>       
 <input type="submit" value="Graphic" name="graphic"></input>
 <input type="submit" value="Cleaner" name="cleaner"></input>

对于使用params属性点击的每个按钮,您可以在控制器类中使用不同的方法

@RequestMapping(value = "/redirect", method = {RequestMethod.POST}, params = "developer")
public ModelAndView developerMethod(){
}

 @RequestMapping(value = "/redirect", method = {RequestMethod.POST}, params = "graphic")
public ModelAndView graphicMethod(){
}

 @RequestMapping(value = "/redirect", method = {RequestMethod.POST}, params = "cleaner")
public ModelAndView cleanerMethod(){
}